結果
問題 |
No.3184 Make Same
|
ユーザー |
![]() |
提出日時 | 2025-08-07 20:39:15 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 726 bytes |
コンパイル時間 | 3,491 ms |
コンパイル使用メモリ | 280,400 KB |
実行使用メモリ | 7,720 KB |
最終ジャッジ日時 | 2025-08-07 20:39:33 |
合計ジャッジ時間 | 17,654 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 WA * 3 |
ソースコード
#include <bits/stdc++.h> using namespace std; using ll = long long; bool chmin(auto &a, auto b) { return a > b ? a = b, true : false; } bool chmax(auto &a, auto b) { return a < b ? a = b, true : false; } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int N; cin >> N; vector<int> A(N); for (int i = 0; i < N; i++) cin >> A[i]; cout << 30 << '\n'; for (int k = 29; k >= 0; k--) { int l = 0, r = 0; while (r < N && !(A[r] >> k & 1)) r++; cout << l + 1 << ' ' << r << ' ' << (1 << k) << '\n'; for (int i = l; i < r; i++) A[i] += 1 << k; sort(A.begin(), A.end()); } // for (int i = 0; i < N; i++) cout << A[i] << " \n"[i + 1 == N]; }