Algorithm (129) 썸네일형 리스트형 과제 진행하기 (176962번) - 프로그래머스 (Programmers) https://school.programmers.co.kr/learn/courses/30/lessons/176962 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 - 과제 진행하기 (176962번) 난이도 : Lv 2 알고리즘 : Stack (스택), Sorting (정렬) Time Complexity : O( N * logN ) def solution(plans): stack = [] answer = [] for i in range(len(plans)): h, m = map(int, plans[i][1].split(':')) plans[i].. 도서관 (1461번) - 백준 (BOJ) https://www.acmicpc.net/problem/1461 1461번: 도서관 세준이는 도서관에서 일한다. 도서관의 개방시간이 끝나서 세준이는 사람들이 마구 놓은 책을 다시 가져다 놓아야 한다. 세준이는 현재 0에 있고, 사람들이 마구 놓은 책도 전부 0에 있다. 각 책 www.acmicpc.net 백준 - 도서관 (1461번) 난이도 : Gold 5 알고리즘 : Sorting (정렬) 풀이 소요 시간 : 25 mins Time Complexity : O( N * logN ) if __name__ == '__main__': N, M = map(int, input().split()) pos = list(map(int, input().split())) neg = sorted([i for i in po.. 치즈 (2638번) - 백준 (BOJ) https://www.acmicpc.net/problem/2638 2638번: 치즈 첫째 줄에는 모눈종이의 크기를 나타내는 두 개의 정수 N, M (5 ≤ N, M ≤ 100)이 주어진다. 그 다음 N개의 줄에는 모눈종이 위의 격자에 치즈가 있는 부분은 1로 표시되고, 치즈가 없는 부분은 0으로 www.acmicpc.net 백준 - 치즈 (2638번) 난이도 : Gold 3 알고리즘 : Simulation & Implementation (구현), BFS or DFS import sys input = sys.stdin.readline def adjs_conds(r, c): if 0 < r: yield r-1, c if r < N-1: yield r+1, c if 0 < c: yield r, c-1 if c.. ACM Craft (1005번) - 백준 (BOJ) https://www.acmicpc.net/problem/1005 1005번: ACM Craft 첫째 줄에는 테스트케이스의 개수 T가 주어진다. 각 테스트 케이스는 다음과 같이 주어진다. 첫째 줄에 건물의 개수 N과 건물간의 건설순서 규칙의 총 개수 K이 주어진다. (건물의 번호는 1번부 www.acmicpc.net 백준 - ACM Craft (1005번) 난이도 : Gold 3 알고리즘 : Topological Sorting (위상 정렬) Time Complexity : O( N + K ) import sys input = sys.stdin.readline def testcase(N, K): cost = [0] + list(map(int, input().split())) dgr = [0] * (N+1).. 교환 (1039번) - 백준 (BOJ) https://www.acmicpc.net/problem/1039 1039번: 교환 첫째 줄에 정수 N과 K가 주어진다. N은 1,000,000보다 작거나 같은 자연수이고, K는 10보다 작거나 같은 자연수이다. www.acmicpc.net 백준 - 교환 (1039번) 난이도 : Gold 3 알고리즘 : BFS (Breadth First Search) (너비 우선 탐색) Time Complexity : O( K * (nC2)^2 ) if __name__ == '__main__': N, K = input().split() if len(N) == 1 or (len(N) == 2 and N[1] == '0'): print(-1) exit() K = int(K) q = [N] n = len(N) for _ in.. 연속된 부분 수열의 합 (178870번) - 프로그래머스 (Programmers) https://school.programmers.co.kr/learn/courses/30/lessons/178870 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 - 연속된 부분 수열의 합 (178870번) 난이도 : Lv 2 알고리즘 : Two Pointers (투 포인터) Time Complexity : O( N ) def solution(seq, k): if seq[0] == k: return [0, 0] n = l = s = e = len(seq) i, j = 0, 1 acc = seq[0] while i < j and j < n: i.. 최적의 행렬 곱셈 (12942번) - 프로그래머스 (Programmers) https://school.programmers.co.kr/learn/courses/30/lessons/12942 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 - 최적의 행렬 곱셈 (12942번) 난이도 : Lv 3 알고리즘 : Dynamic Programming Time Complexity : O( N^3 ) def solution(msize): mlen = len(msize) size = [s for s, _ in msize] size.append(msize[-1][-1]) memo = [[0]*mlen for _ in range(mle.. 문자열 폭발 (9935번) - 백준 (BOJ) https://www.acmicpc.net/problem/9935 9935번: 문자열 폭발 첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모 www.acmicpc.net 백준 - 문자열 폭발 (9935번) (EKSPLOZIJA) 난이도 : Gold 4 알고리즘 : Stack Time Complexity : O( N ) import sys input = sys.stdin.readline if __name__ == '__main__': string = input().rstrip() bomb = input().rstrip() lb, ls = len(bom.. 이전 1 ··· 9 10 11 12 13 14 15 ··· 17 다음