結果
問題 |
No.5001 排他的論理和でランニング
|
ユーザー |
|
提出日時 | 2018-03-16 23:31:20 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 134 ms / 1,500 ms |
コード長 | 347 bytes |
コンパイル時間 | 35 ms |
実行使用メモリ | 23,784 KB |
スコア | 35,093,958 |
最終ジャッジ日時 | 2020-03-12 19:35:28 |
ジャッジサーバーID (参考情報) |
judge10 / |
純コード判定しない問題か言語 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 50 |
コンパイルメッセージ
Syntax OK
ソースコード
N, M = gets.split.map &:to_i A = gets.split.map(&:to_i).sort.reverse m = N - M res = A.inject(:^) sub = [] A.group_by{|a|Math.log2(a).floor}.each{|k, v| ok = res & 2**k != 0 v.shift if ok ^ v.size.even? v.each{|n| res ^= n sub << n m -= 1 if m == 0 puts (A - sub)*" " exit end } } puts (A - sub).max(M)*" "