백준 1138번 한 줄로 서기 Python문제문제N명의 사람이 있습니다.사람들의 키는 1부터 N까지 모두 다릅니다.즉, 키 1, 키 2, 키 3 … 키 N 형태로 번호가 부여된 셈입니다.모든 사람은 자신보다 키가 큰 사람이 왼쪽에 몇 명 있었는지를 기억합니다.이 정보가 입력으로 주어지며,입력의 순서는 “키가 작은 사람부터”입니다.즉, 입력의 첫 번째 수는 키 1인 사람의 기억,두 번째 수는 키 2인 사람의 기억,마지막 수는 키 N인 사람의 기억입니다.이 정보를 바탕으로,줄의 실제 순서를 복원해야 합니다.테스트케이스예제 입력 142 1 1 0예제 출력 14 2 1 3예제 입력 250 0 0 0 0예제 출력 21 2 3 4 5예제 입력 365 4 3 2 1 0예제 출력 36 5 4 3 2 1예제 입력 476..
백준 1120번 문자열 Python 풀이 문제 길이가 다른 두 문자열 A, B가 주어집니다. A의 앞이나 뒤에 문자를 붙여서 B와 길이가 같아질 때, 두 문자열의 서로 다른 문자 개수(= 차이)를 최소로 만드는 문제입니다. 즉, A를 B의 일부에 “겹쳐서” 비교했을 때, 가장 비슷한 구간을 찾는 것이 목표입니다. 테스트케이스 입력 출력 설명 adaabc aababbc 2 B의 여러 위치에 A를 겹쳐 비교했을 때 최소 차이 2 hello xello 1 첫 글자만 다름 koder topcoder ..
프로그래머스: 과제 진행하기 (Python) 문제 ✔️ 문제 설명 루는 여러 개의 과제를 정해진 시간에 맞춰 진행하려고 합니다. 규칙은 다음과 같습니다: 각 과제는 반드시 정해진 시각에 시작합니다. 진행 중인 과제가 있어도 새 과제 시작 시간이 되면 즉시 멈추고 새 과제를 시작합니다. 멈춘 과제는 스택(Stack)에 보관합니다. 시간이 남으면, 가장 최근에 멈춘 과제부터 이어서 진행합니다. 모든 과제를 끝낸 순서대로 이름을 배열로 반환합니다. ✔️ 입력 예시 plans = [ ["art", "12:00", "50"], ["math", "12:20", "30"], ["english",..
🔷 백준 1759번 – 암호 만들기 (Python) 문제 설명 문제 암호는 서로 다른 L개의 알파벳 소문자로 구성됩니다. 반드시 최소 1개의 모음(`a`, `e`, `i`, `o`, `u`)이 포함되어야 합니다. 반드시 최소 2개의 자음이 포함되어야 합니다. 알파벳은 사전 순으로 정렬되어 있어야 합니다. 주어진 C개의 문자 중에서 위 조건을 만족하는 모든 암호를 출력하는 프로그램을 작성합니다. 입력 L CC개의 알파벳 (공백 구분) 출력 조건을 만족하는 모든 암호 (한 줄에 하나씩) 테스트케이스 예제 입력 4 6a t c i s w 예제 출력 acisac..
🔷 백준 11053번 – 가장 긴 증가하는 부분 수열 (Python) 문제설명 문제 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열(LIS: Longest Increasing Subsequence)의 길이를 구하는 문제입니다. 부분 수열이란 원소를 연속적이지 않게 선택해도 되지만, 순서는 반드시 유지해야 합니다. 증가하는 부분 수열이란 앞에 있는 원소보다 뒤의 원소가 더 큰 경우만 연결되는 수열을 말합니다. 테스트케이스 입력 610 20 10 30 20 50 출력 4 문제 구체적 설명 (예시 기반) 입력 수열: 10 20 10 30 20 50 가능한 증가 부분 수열 예: ..
🔷 백준 1026번 보물 Python 풀이🔷 문제 설명문제길이가 \(N\)인 두 개의 정수 배열 \(A\), \(B\)가 있습니다. 아래와 같이 \(S\)라는 값을 정의합니다.\[S = A[0] \times B[0] + A[1] \times B[1] + \cdots + A[N-1] \times B[N-1]\]이때, 배열 \(A\)의 원소들을 재배열하여 \(S\)의 값을 최소화해야 합니다. 배열 \(B\)는 재배열할 수 없습니다.입력첫째 줄: 배열의 길이 \(N\) (\(1 \leq N \leq 50\))둘째 줄: 배열 \(A\)의 \(N\)개의 원소 (각각 \(0 \leq A[i] \leq 100\))셋째 줄: 배열 \(B\)의 \(N\)개의 원소 (각각 \(0 \leq B[i] \leq 100\))..
🧩 백준 1018번 - 체스판 다시 칠하기✨ 목표 N × M 크기의 보드에서 8 × 8 크기의 체스판을 하나 잘라내어, 다시 칠해야 할 칸의 수가 가장 적은 경우를 구합니다.🔍 체스판 조건 인접한 칸은 색이 달라야 합니다. 가능한 체스판의 패턴은 다음 두 가지입니다: 왼쪽 위가 'W'로 시작하는 체스판 왼쪽 위가 'B'로 시작하는 체스판 🧪 첫 번째 코드 (초기 버전)N, M = map(int, input().split())arr = [['' for _ in range(50)] for _ in range(50)]arr2 = [['' for _ in range(8)] for _ in range(8)]arr3 = [['' for _ in range(8)] for..
- Total
- Today
- Yesterday
- dfs
- 알고리즘기초
- 코딩테스트
- 동적 계획법
- 프로그래밍
- 동적계획법
- 브루트포스
- 알고리즘
- 그래프 탐색
- 백준
- 알고리즘문제풀이
- 프로그래머스
- 문제 풀이
- python 알고리즘
- DP
- 객체지향
- 문자열처리
- HTML
- 파이썬
- 알고리즘 문제풀이
- c언어
- C++
- 코딩
- 그리디알고리즘
- Python
- 코딩 테스트
- 문제풀이
- 상속
- 파이썬코딩
- 그리디
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
