結果
問題 |
No.1245 ANDORゲーム(calc)
|
ユーザー |
![]() |
提出日時 | 2020-10-02 22:03:23 |
言語 | Crystal (1.14.0) |
結果 |
RE
|
実行時間 | - |
コード長 | 577 bytes |
コンパイル時間 | 11,627 ms |
コンパイル使用メモリ | 296,212 KB |
実行使用メモリ | 12,580 KB |
最終ジャッジ日時 | 2024-06-30 21:13:05 |
合計ジャッジ時間 | 15,779 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 5 RE * 20 |
ソースコード
def get_ints read_line.split.map(&.to_i) end n, q = get_ints a = get_ints s = read_line.chomp.chars t = get_ints cost = Array.new(2) { [0] * 30 } (0 ... 2).each do |i| (0 ... 30).each do |j| x = i (0 ... n).each do |k| if s[k] == '0' y = x & (a[k] >> j & 1) else y = x | (a[k] >> j & 1) end cost[i][j] += (y - x).abs << j x = y end end end (0 ... q).each do |i| answer = (0 ... 30).map { |j| cost[t[i] >> j & 1][j] }.sum puts answer end