結果
問題 |
No.1072 A Nice XOR Pair
|
ユーザー |
|
提出日時 | 2021-11-05 17:19:52 |
言語 | Ruby (3.4.1) |
結果 |
TLE
|
実行時間 | - |
コード長 | 494 bytes |
コンパイル時間 | 307 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 19,360 KB |
最終ジャッジ日時 | 2024-11-06 08:05:27 |
合計ジャッジ時間 | 4,964 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 1 TLE * 1 -- * 9 |
コンパイルメッセージ
Syntax OK
ソースコード
N, X = gets.split(" ").map{|s| s.to_i} a = [] N.times { a << gets.to_i } a.sort! cnt = 0 while a do y = a[0] ycnt = a.bsearch_index{|i| i > y} ycnt = a.length if not ycnt z = y ^ X a = a[ycnt..-1] if z == y then cnt += ycnt * (ycnt - 1) / 2 next end zmin = a.bsearch_index{|i| i >= z} next if not zmin zmax = a.bsearch_index{|i| i > z} zmax = a.length if not zmax zcnt = zmax - zmin cnt += ycnt * zcnt break if zmax == a.length a = a[0, zmin] + a[zmax..-1] end puts cnt