일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코테
- Combination
- 괄호
- 홈화면
- itertools
- 매일11시
- 나머지
- 안드로이드
- LCS
- 코틀린
- 9095
- Python
- 뒤로가기
- 11057
- lcm
- 11053
- 최소공배수
- Android
- 파이썬
- 1182
- permutation
- 11054
- 순열
- 6603
- expo
- 백준
- 앱
- Kotlin
- 11기
- 1260
- Today
- Total
목록파이썬 (50)
황소개발자
기본적으로 다음과 같은 표를 만드세요 0 A C A Y K P 0 0 0 0 0 0 0 0 C 0 A 0 P 0 C 0 A 0 K 0 그리고 한줄씩 채워 나갑니다. 0 A C A Y K P 0 0 0 0 0 0 0 0 C 0 0 A 0 P 0 C 0 A 0 K 0 위에 테이블에서, C와 A를 비교하면 다르죠? 다르면 max(그 칸의 윗 칸 값, 그 칸의 왼쪽 칸 값) 을 넣어줍니다. 0 A C A Y K P 0 0 0 0 0 0 0 0 C 0 0 1 A 0 P 0 C 0 A 0 K 0 위에 테이블에서, C와 C 같죠? 같으면 (그 칸의 왼쪽 위 대각선 칸 값) 을 넣어줍니다. 이게 답니다. 한줄씩 채워나가면됩니다. a = input() b = input() dp = [[0 for i in range(le..
n = int(input()) dp = [[0 for i in range(10)] for j in range(n)] dp[0] = [1 for i in range(10)] for i in range(1, n): for j in range(10): for k in range(j, 10): dp[i][k] += dp[i - 1][j] print(sum(dp[-1]) % 10007) 우선 dp 배열 만들어주는데, 어떻게 만드냐면 [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [1, 3, 6, 10, 15, 21, 28, 36, 45, 55]] 이런식으로 쌓이게끔 해서 마지막 배열 합계가 정답입니다. ( % 10007 잊지말구요) 해결 아이..