[파이썬] 백준 10844 : 쉬운 계단 수 (실버1)
10844번: 쉬운 계단 수
첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다.
www.acmicpc.net
문제
풀이
0. 방향성 생각
- 0과 9를 제외하면 양 옆에서 온다. 0 9만 예외처리
전체코드
n = int(input())
dp = [[0]*10 for _ in range(n)]
dp[0][1:] = [1]*9
k = 10**9
for stage in range(n-1):
for num in range(10):
if 0<num<9:
dp[stage+1][num] = (dp[stage][num-1] + dp[stage][num+1])%k
elif num == 0:
dp[stage+1][0] = dp[stage][1]%k
else:
dp[stage+1][9] = dp[stage][8]%k
print(sum(dp[-1])%k)
- 이전 stage의 인접한 숫자에서 넘어오게 테이블을 짜면 된다.
코멘트
.
'Algorithm > Dynamic Programming' 카테고리의 다른 글
[파이썬] 백준 4781 : 사탕가게 (골드4) (0) | 2023.12.05 |
---|---|
[파이썬] 프로그래머스 : 도둑질 (Lv.4) (0) | 2023.11.23 |
[파이썬] 프로그래머스 : 스티커 모으기 2 (Lv.3) (0) | 2023.11.23 |
[파이썬] 백준 18244 : 변형 계단 수 (골드3) (0) | 2023.11.23 |
[파이썬] 백준 1636 : 한번 열면 멈출 수 없어 (골드4) (0) | 2023.11.05 |
[파이썬] 백준 14550 : 마리오 파티 (골드5) (0) | 2023.10.22 |
[파이썬] 백준 2193 : 이친수 (실버3) (0) | 2023.10.12 |
댓글