結果
| 問題 |
No.252 "良問"(良問とは言っていない (2)
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-02-20 18:05:44 |
| 言語 | Ruby (3.4.1) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 839 bytes |
| コンパイル時間 | 126 ms |
| コンパイル使用メモリ | 7,680 KB |
| 実行使用メモリ | 33,488 KB |
| 最終ジャッジ日時 | 2024-09-29 03:48:35 |
| 合計ジャッジ時間 | 7,182 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | TLE * 1 -- * 6 |
コンパイルメッセージ
Main.rb:6: warning: assigned but unused variable - u Syntax OK
ソースコード
def min a, b
return a < b ? a : b
end
t = readline().to_i
for u in 1..t do
s = readline()
prevprob = Array.new(s.length, 0)
for i in 6..(s.length-1) do
flg = true
for j in 0..6 do
if s[i - 6 + j] != 'problem'[j]
flg = false
break
end
end
prevprob[i] = prevprob[i - 1]
prevprob[i] += 1 if flg
end
prob = Array.new(s.length, 100)
for i in 0..(s.length-8) do
prob[i] = 0
for j in 0..6 do
prob[i] += 1 if s[i + j] != 'problem'[j]
end
end
for i in 2..(s.length) do
prob[s.length - i] = min prob[s.length - i + 1], prob[s.length - i]
end
ans = 100
for i in 0..(s.length - 11) do
sub = prob[i + 4]
for j in 0..3 do
sub += 1 if s[i + j] != 'good'[j]
end
sub += prevprob[i - 1] if i > 0
ans = min ans, sub
end
puts ans
end