結果
| 問題 |
No.204 ゴールデン・ウィーク(2)
|
| コンテスト | |
| ユーザー |
ikd
|
| 提出日時 | 2017-04-12 23:09:02 |
| 言語 | Ruby (3.4.1) |
| 結果 |
AC
|
| 実行時間 | 90 ms / 1,000 ms |
| コード長 | 815 bytes |
| コンパイル時間 | 125 ms |
| コンパイル使用メモリ | 7,424 KB |
| 実行使用メモリ | 12,288 KB |
| 最終ジャッジ日時 | 2024-12-24 11:58:22 |
| 合計ジャッジ時間 | 5,394 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 46 |
コンパイルメッセージ
Syntax OK
ソースコード
d=gets.to_i
s=Array.new(2){gets.chomp}.inject{|s, t| s+t}
d.times{s='x'+s+'x'}
s=s.chars.each.map{|c| c=='x' ? 0 : 1}
if d.zero?
l, r, cnt=0, 0, 0
while r<s.size
l=r
while r<s.size and s[r].zero?
l+=1
r+=1
end
while r<s.size and s[r]==1
r+=1
end
cnt=[cnt, r-l].max
end
puts cnt
exit(0)
end
mx=0
(s.size-d+1).times do |i|
(1..d).each do |dd|
next unless s[i...i+dd].inject(:+).zero?
for j in i...i+dd do
s[j]^=1
end
l, r, cnt=0, 0, 0
while r<s.size
l=r
while r<s.size and s[r].zero?
l+=1
r+=1
end
while r<s.size and s[r]==1
r+=1
end
cnt=[cnt, r-l].max
end
# print "#{i} #{cnt}\n"
mx=[mx, cnt].max
for j in i...i+dd do
s[j]^=1
end
end
end
puts mx
ikd