분류 전체보기 206

파이썬 백준 1931 회의실 배정

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 import sys input = sys.stdin.readline n = int(input()) l = [] for i in range(n) : l.append(list(map(int, input().split()))) l.sort(key = lambda x : x[0]) l.sort(key = lambda x : x[1]) now = 0 count = 0 for start, end in l : if start >= now : count = count + 1 now = end print(count) Colored by Color Scripter cs IDEA 회의들을 종료점이 빠른 순서대로 (=일찍 끝나는 순서대로) 정렬한다. 시간 ..

파이썬 백준 9084 동전

1 2 3 4 5 6 7 8 9 10 11 testcase = int(input()) for t in range(testcase) : n = int(input()) C = list(map(int, input().split())) m = int(input()) DP = [0 for i in range(m + C[-1] + 1)] DP[0] = 1 for coin in C : for i in range(1, m + 1) : DP[i] = DP[i] + DP[i - coin] print(DP[m]) cs IDEA 50원, 100원, 500원 동전이 있다고 하자. 5000원을 만드는 경우는, 4500원을 만드는 경우에 500원 하나를 더하거나, 4900원을 만드는 경우에 100원 하나를 더하거나, 4950원을 ..

파이썬 백준 1904 01타일

1 2 3 4 5 6 n = int(input()) list = [0, 1, 0] for i in range(n) : list[2] = (list[0] + list[1]) % 15746 list[0], list[1] = list[1], list[2] print(list[min(n, 2)]) cs IDEA 길이 n의 수열은 길이 n-1의 수열에 1을 붙이거나, 길이 n-2의 수열에 00을 붙여서 만들어진다. 점화식으로 나타내면 f(n) = f(n-1) + f(n-2)인 피보나치 수열이다. n-2 이전의 값은 f(n)을 구하는데 필요없으므로, dp는 3칸만 있으면 된다.