結果

問題 No.533 Mysterious Stairs
ユーザー kurimupykurimupy
提出日時 2020-06-18 12:31:07
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 239 ms / 5,000 ms
コード長 396 bytes
コンパイル時間 298 ms
コンパイル使用メモリ 87,072 KB
実行使用メモリ 171,096 KB
最終ジャッジ日時 2023-09-16 12:01:39
合計ジャッジ時間 7,500 ms
ジャッジサーバーID
(参考情報)
judge12 / judge15
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 208 ms
169,960 KB
testcase_01 AC 204 ms
170,004 KB
testcase_02 AC 207 ms
169,928 KB
testcase_03 AC 205 ms
169,928 KB
testcase_04 AC 207 ms
170,008 KB
testcase_05 AC 205 ms
169,952 KB
testcase_06 AC 204 ms
169,892 KB
testcase_07 AC 208 ms
170,136 KB
testcase_08 AC 209 ms
170,032 KB
testcase_09 AC 205 ms
169,872 KB
testcase_10 AC 209 ms
170,204 KB
testcase_11 AC 205 ms
169,892 KB
testcase_12 AC 208 ms
170,212 KB
testcase_13 AC 208 ms
169,968 KB
testcase_14 AC 208 ms
169,924 KB
testcase_15 AC 210 ms
170,668 KB
testcase_16 AC 209 ms
170,808 KB
testcase_17 AC 209 ms
170,676 KB
testcase_18 AC 208 ms
170,864 KB
testcase_19 AC 212 ms
170,716 KB
testcase_20 AC 215 ms
170,728 KB
testcase_21 AC 212 ms
170,808 KB
testcase_22 AC 220 ms
170,692 KB
testcase_23 AC 238 ms
170,736 KB
testcase_24 AC 239 ms
171,096 KB
testcase_25 AC 216 ms
170,648 KB
testcase_26 AC 233 ms
171,000 KB
testcase_27 AC 216 ms
170,896 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

# 基本dp
N = int(input())
dp = [[0, 0, 0, 0] for i in range(10**6+4)]
# dp[X][k]=X段目に最後にk回登って行く方法
dp[0][0]=1
mod = 10**9 + 7
for i in range(1, N+1):
    dp[i][1] = (dp[i-1][0]+dp[i-1][2]+dp[i-1][3]) % mod
    dp[i][2] = (dp[i-2][0]+dp[i-2][1]+dp[i-2][3]) % mod
    dp[i][3] = (dp[i-3][0]+dp[i-3][1]+dp[i-3][2]) % mod
ans = dp[N][1]+dp[N][2]+dp[N][3]
print(ans % mod)
0