結果
| 問題 |
No.5001 排他的論理和でランニング
|
| ユーザー |
|
| 提出日時 | 2018-03-16 23:17:00 |
| 言語 | Ruby (3.4.1) |
| 結果 |
AC
|
| 実行時間 | 130 ms / 1,500 ms |
| コード長 | 333 bytes |
| コンパイル時間 | 40 ms |
| 実行使用メモリ | 23,712 KB |
| スコア | 24,586,561 |
| 最終ジャッジ日時 | 2020-03-12 19:34:26 |
|
ジャッジサーバーID (参考情報) |
judge6 / |
| 純コード判定しない問題か言語 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| 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|
oddp = res & 2**k != 0
v.pop if oddp
v.each{|n|
res ^= n
sub << n
m -= 1
if m == 0
puts (A - sub)*" "
exit
end
}
}
puts (A - sub).max(M)*" "