스킬 시전이 1초, m초인 스킬 2개만 있어서 구하고자 하는 i초까지의 경우의 수를 보려면 i-1, i-m초까지의
경우의 수를 더해주면 된다.
n, m = map(int, input().split())
ans = 0
mod = 1000000007
dp = [1]*(n+1)
if n<m :
print(1)
else :
dp[m] = 2
for i in range(m+1, n+1):
dp[i] = (dp[i-1])%mod+(dp[i-m])%mod
print(dp[n]%mod)
https://www.acmicpc.net/problem/17271
17271번: 리그 오브 레전설 (Small)
규환이는 리그 오브 레전설이라는 게임을 좋아한다. 이 게임에서는 N초의 시간 동안 싸움을 하는데, 규환이가 플레이하는 캐릭터는 A, B 두 가지 스킬을 사용할 수 있다. A 스킬의 시전 시간은 1
www.acmicpc.net
'알고리즘 문제풀이' 카테고리의 다른 글
가장 큰 정사각형(백준1915) (0) | 2024.01.07 |
---|---|
LCS2(백준 9252) (0) | 2024.01.03 |
최대 페이지 수 (백준 16493) (0) | 2023.12.30 |
수 고르기 (백준 20186) (0) | 2023.11.09 |
모두의 마블 (백준 12845) (1) | 2023.11.09 |