結果
問題 |
No.935 う し た ぷ に き あ く ん 笑 ビ - ム
|
ユーザー |
|
提出日時 | 2021-11-09 11:56:38 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 814 ms / 2,000 ms |
コード長 | 503 bytes |
コンパイル時間 | 275 ms |
コンパイル使用メモリ | 7,552 KB |
実行使用メモリ | 12,672 KB |
最終ジャッジ日時 | 2024-11-18 08:56:05 |
合計ジャッジ時間 | 21,211 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 58 |
コンパイルメッセージ
Syntax OK
ソースコード
$N = gets.to_i $S = gets.strip.split("").map{|s| s == "E" ? 1 : 0} $A = gets.split(" ").map{|s| s.to_i} Q = gets.to_i K = gets.split(" ").map{|s| s.to_i} def maxEnemy(k) maxres = 0 res = 0 s = t = sum = 0 loop { while t < $N and sum <= k do sum += $A[t] res += $S[t] t += 1 end if sum <= k then maxres = res if res > maxres break end maxres = (res - $S[t-1]) if (res - $S[t-1]) > maxres sum -= $A[s] res -= $S[s] s += 1 } maxres end K.each {|k| puts maxEnemy(k) }