結果
問題 | No.2623 Room Allocation |
ユーザー |
|
提出日時 | 2024-02-09 21:40:22 |
言語 | Ruby (3.4.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 500 bytes |
コンパイル時間 | 219 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 47,232 KB |
最終ジャッジ日時 | 2024-09-28 14:55:44 |
合計ジャッジ時間 | 7,233 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 22 WA * 8 |
コンパイルメッセージ
Syntax OK
ソースコード
input = $<.read.split N, X, Y = input.shift(3).map(&:to_i) group_by_ai = Array.new(2) { [0] * (X + Y) } N.times do |i| p = input.shift.to_i c = input.shift case c when ?A group_by_ai[0][i % (X + Y)] += p when ?B group_by_ai[1][i % (X + Y)] += p end end indices = (0 ... X + Y).filter { |i| group_by_ai[0][i] + group_by_ai[1][i] > 0 } sum = indices.sum { |i| group_by_ai[0][i] } a = indices.map { |i| group_by_ai[1][i] - group_by_ai[0][i] } a.sort! a.reverse! sum += a[0, Y].sum puts sum