結果
問題 | No.2874 Gunegune Tree |
ユーザー |
|
提出日時 | 2024-09-07 03:17:14 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 206 ms / 2,000 ms |
コード長 | 592 bytes |
コンパイル時間 | 523 ms |
コンパイル使用メモリ | 82,860 KB |
実行使用メモリ | 100,052 KB |
最終ジャッジ日時 | 2024-09-07 03:17:20 |
合計ジャッジ時間 | 5,110 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 30 |
ソースコード
import sys input = sys.stdin.readline MOD = 998244353 N = int(input()) dp = [[0 for _ in range(6)] for _ in range(N+1)] dp[0][0] = 1 dir = [[1, 2, 3, 4, 5], [1, 2], [1, 2, 3], [2, 3, 4], [3, 4, 5], [4, 5]] h = [-1, 0, 1, 1, 1, 0] inv = [-1, 1] for i in range(2, 6): inv.append(pow(i, MOD-2, MOD)) ans = 0 for i in range(N): for j in range(6): if dp[i][j]==0: continue for k in dir[j]: dp[i+1][k] += dp[i][j] * inv[len(dir[j])] % MOD dp[i+1][k] %= MOD for j in range(2, 5): ans += dp[i+1][j] ans %= MOD print(ans)