結果
問題 | No.599 回文かい |
ユーザー |
|
提出日時 | 2023-12-15 11:29:05 |
言語 | PyPy3 (7.3.15) |
結果 |
MLE
|
実行時間 | - |
コード長 | 898 bytes |
コンパイル時間 | 390 ms |
コンパイル使用メモリ | 82,448 KB |
実行使用メモリ | 804,000 KB |
最終ジャッジ日時 | 2024-09-27 06:13:08 |
合計ジャッジ時間 | 11,585 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 10 MLE * 7 -- * 5 |
ソースコード
import ioimport sysimport bisectimport mathfrom itertools import permutations, combinationsfrom heapq import heappush, heappopfrom collections import dequefrom collections import defaultdict as ddsys.setrecursionlimit(10**7+10)# mod = 998244353mod = 10**9+7_INPUT = """\kaibunkaibunkai"""def main():T = input()N = len(T)dp = [[-1 for _ in range(N+1)]for _ in range(N+1)] # 区間l,rのときのケース数def dfs(l, r):if dp[l][r] != -1:return dp[l][r]else:ret = 1for i in range(r-l):if l+i>=r-1-i:breakif T[l:l+i+1] == T[r-1-i:r]:ret += dfs(l+i+1, r-1-i)ret %= moddp[l][r] = retreturn retdfs(0, N)print(dp[0][N]%mod)if __name__ == "__main__":# sys.stdin = io.StringIO(_INPUT)main()