結果
| 問題 |
No.3184 Make Same
|
| コンテスト | |
| ユーザー |
urectanc
|
| 提出日時 | 2025-09-03 19:34:48 |
| 言語 | Rust (1.83.0 + proconio) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 563 bytes |
| コンパイル時間 | 12,862 ms |
| コンパイル使用メモリ | 404,788 KB |
| 実行使用メモリ | 7,720 KB |
| 最終ジャッジ日時 | 2025-09-03 19:35:10 |
| 合計ジャッジ時間 | 20,598 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 WA * 2 |
| other | AC * 1 WA * 23 |
ソースコード
use proconio::input;
fn main() {
input! {
n: usize,
mut a: [usize; n],
}
let mut ans = vec![];
for i in (0..30).rev() {
let v = 1 << i;
let r = a.partition_point(|&a| a >> i & 1 == 0);
if 0 < r && r < n {
ans.push((0, r - 1, v));
for j in 0..r {
a[j] += v;
}
a.sort_unstable();
}
}
assert!(a.iter().all(|&a_i| a_i == a[0]));
println!("{}", ans.len());
for (l, r, v) in ans {
println!("{l} {r} {v}");
}
}
urectanc