https://www.acmicpc.net/problem/1309
1309번: 동물원
첫째 줄에 우리의 크기 N(1≤N≤100,000)이 주어진다.
www.acmicpc.net
n = int(input())
d = [[0] * 3 for _ in range(n + 1)]
d[0][0] = 1
for i in range(1, n + 1):
d[i][0] = d[i - 1][0] + d[i - 1][1] + d[i - 1][2]
d[i][1] = d[i - 1][0] + d[i - 1][2]
d[i][2] = d[i - 1][0] + d[i - 1][1]
for j in range(3):
d[i][j] %= 9901
print(sum(d[n]) % 9901)
D[N] = 세로로 n칸인 동물원에서 가능한 배치의 수
d[n][m] = 세로로 n칸인 동물원, 마지막 칸은 m번 방법을 사용한 배치의 수
m : 0 배치하지 않음
m : 1 왼쪽 배치
m : 2 오른쪽 배치
'백준 알고리즘 (Baekjoon Algorithm)' 카테고리의 다른 글
[파이썬] 백준 알고리즘 No.16197 두 동전 (0) | 2022.01.23 |
---|---|
[파이썬 (풀이추가예정)] 백준 알고리즘 No.11054 가장 긴 바이토닉 부분 수열 (0) | 2022.01.17 |
[파이썬] 백준 알고리즘 No.1149 RGB 거리 (0) | 2022.01.14 |
[파이썬] 백준 알고리즘 No.2225 합분해 (0) | 2022.01.13 |
[파이썬] 백준 알고리즘 No.14391 종이 조각 (0) | 2022.01.10 |