結果

問題 No.599 回文かい
ユーザー sibasyun
提出日時 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
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

import io
import sys
import bisect
import math
from itertools import permutations, combinations
from heapq import heappush, heappop
from collections import deque
from collections import defaultdict as dd
sys.setrecursionlimit(10**7+10)
# mod = 998244353
mod = 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 = 1
for i in range(r-l):
if l+i>=r-1-i:break
if T[l:l+i+1] == T[r-1-i:r]:
ret += dfs(l+i+1, r-1-i)
ret %= mod
dp[l][r] = ret
return ret
dfs(0, N)
print(dp[0][N]%mod)
if __name__ == "__main__":
# sys.stdin = io.StringIO(_INPUT)
main()
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0