結果

問題 No.588 空白と回文
ユーザー TANIGUCHI Kousuke
提出日時 2020-01-31 10:24:20
言語 Ruby
(3.4.1)
結果
AC  
実行時間 393 ms / 2,000 ms
コード長 364 bytes
コンパイル時間 37 ms
コンパイル使用メモリ 7,424 KB
実行使用メモリ 19,968 KB
最終ジャッジ日時 2024-09-17 06:46:13
合計ジャッジ時間 5,272 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 25
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

def max(a,b); a > b ? a : b; end
S = gets.chomp
N = S.size
dp = Array.new(N + 1){ Array.new(N + 1, 0) }
ans = 0

(1 .. N).each do |d|
  N.times do |l|
    r = l + d
    break if r > N

    if S[l] == S[r - 1]
      dp[l][r] = dp[l + 1][r - 1] + (r - l > 1 ? 2 : 1)
    else
      dp[l][r] = dp[l + 1][r - 1]
    end
    ans = max(ans, dp[l][r])
  end
end
puts ans
0