일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Android
- 파이썬
- 최소공배수
- Combination
- 11기
- 코틀린
- 매일11시
- itertools
- 1260
- 순열
- 11053
- 백준
- 9095
- 11057
- 뒤로가기
- Python
- 앱
- 1182
- expo
- 6603
- Kotlin
- 코테
- permutation
- 안드로이드
- 11054
- 나머지
- lcm
- 홈화면
- LCS
- 괄호
- Today
- Total
목록분류 전체보기 (181)
황소개발자
나머지 연산 나머지 연산 n = int(input()) dp = [[0 for i in range(10)] for j in range(1001)] dp[1] = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] for i in range(2, 1001): for j in range(10): for k in range(j + 1): dp[i][j] += dp[i - 1][k] dp[i][j] %= 10007 print(sum(dp[n]) % 10007)
연습하다보면 슬슬 보입니다 n = int(input()) dp = [[0 for i in range(10)] for j in range(101)] dp[1] = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1] for i in range(2, 101): for j in range(10): if j - 1 >= 0: dp[i][j] += dp[i - 1][j - 1] dp[i][j] %= 1000000000 if j + 1
헌터.. import sys input = sys.stdin.readline dp = [[0, 0, 0, 0] for i in range(100001)] dp[1] = [1, 0, 0] dp[2] = [0, 1, 0] dp[3] = [1, 1, 1] for i in range(4, 100001): dp[i][0] = (dp[i - 1][1] + dp[i - 1][2]) % 1000000009 dp[i][1] = (dp[i - 2][0] + dp[i - 2][2]) % 1000000009 dp[i][2] = (dp[i - 3][0] + dp[i - 3][1]) % 1000000009 t = int(input()) for i in range(t): n = int(input()) print(sum(dp[n])..
어허 n = int(input()) lst = list(map(int, input().split())) lst = [0] + lst dp = [999999999 for i in range(1001)] dp[0] = 0 for i in range(n + 1): for j in range(i + 1): dp[i] = min(dp[i], lst[j] + dp[i - j]) print(dp[n])
n이 되기위해선 뭐가 필요한지 생각하라 dp[n] 은 j 개 카드팩을 사고 d[n - j] 를 더하면 된다 그 중 max 값이 dp[n] 에 들어간다. import sys input = sys.stdin.readline n = int(input()) lst = list(map(int, input().split())) lst = [0] + lst dp = [0 for i in range(1001)] for i in range(n + 1): for j in range(i + 1): dp[i] = max(dp[i], lst[j] + dp[i - j]) print(dp[n])
그가 있지 않았다면 자신감을 얻지 못했을 것이다. import sys input = sys.stdin.readline dp = [0 for i in range(1000001)] dp[0] = 1 dp[1] = 1 dp[2] = 2 for i in range(3, 1000001): dp[i] = dp[i - 1] % 1000000009 + dp[i - 2] % 1000000009 + dp[i - 3] % 1000000009 t = int(input()) for i in range(t): n = int(input()) print(dp[n] % 1000000009)
뭐야 짬밥먹고 푸니 간단하네 import sys input = sys.stdin.readline def go(x, n): global count if x == n: count += 1 if x > n: return go(x + 1, n) go(x + 2, n) go(x + 3, n) t = int(input()) for i in range(t): n = int(input()) count = 0 go(0, n) print(count) 이게 최선의 풀이는 아닙니다. 아래 글이 최적의 코드입니다. 백준 15988 파이썬 python : 1, 2, 3 더하기 3 @@황소처럼 우직하게@@ 갓바텀업 그가 있지 않았다면 자신감을 얻지 못했을 것이다. import sys input = sys.stdin.readline..