結果
問題 |
No.1896 Arrays and XOR Procedure 2
|
ユーザー |
![]() |
提出日時 | 2022-04-08 22:45:46 |
言語 | cLay (20241019-1) |
結果 |
WA
|
実行時間 | - |
コード長 | 688 bytes |
コンパイル時間 | 5,113 ms |
コンパイル使用メモリ | 199,416 KB |
実行使用メモリ | 7,880 KB |
最終ジャッジ日時 | 2024-11-28 13:36:08 |
合計ジャッジ時間 | 8,385 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 WA * 1 |
other | AC * 11 WA * 16 |
ソースコード
ll c[6000],n; VI res; void ent(ll p,ll q){ res.push_back(p+1); res.push_back(q+1); swap(c[p],c[q+n]); } { rd(n); ll@d[2n]; c[0..2n-1]=d[0..]; sortF(2n,d); ll i=0,j=0; while(i<n&&j<n){ while(i<n&&c[i]<=d[n-1])++i; while(j<n&&c[j+n]>=d[n])++j; if(i<n&&j<n){ ent(i,j); } } if(i<n){ j=0; while(i<n){ while(i<n&&c[i]<=d[n-1])++i; while(j<n&&c[j+n]>d[n-1])++j; if(i<n){ ent(i,j); } } } if(j<n){ i=0; while(j<n){ while(i<n&&c[i]<d[n])++i; while(j<n&&c[j+n]>=d[n])++j; if(j<n){ ent(i,j); } } } wt((ll)(res.size()/2*3)); rep(i,0,res.size(),2){ wt(1,res[i],res[i+1]); wt(2,res[i],res[i+1]); wt(1,res[i],res[i+1]); } }