提出 #34046631
ソースコード 拡げる
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define ch() getchar()
#define pc(x) putchar(x)
using namespace std;
template<typename T>void read(T&x){
static char c;static int f;
for(f=1,c=ch();c<'0'||c>'9';c=ch())if(c=='-')f=-f;
for(x=0;c>='0'&&c<='9';c=ch()){x=x*10+(c&15);}x*=f;
}
template<typename T>void write(T x){
static char q[64];int cnt=0;
if(x==0)return pc('0'),void();
if(x<0)pc('-'),x=-x;
while(x)q[cnt++]=x%10+'0',x/=10;
while(cnt--)pc(q[cnt]);
}
const int maxn=100005;
int P[maxn*2],Q[maxn*2];
int st[maxn],tp;
void SWAP(int i,int j){
st[++tp]=i;swap(P[i],P[j]);
Q[P[i]]=i;Q[P[j]]=j;
}
int main(){
int N;read(N);
for(int i=1;i<=N*2;++i)
read(P[i]),Q[P[i]]=i;
for(int i=1;i<=N*2;++i){
if((Q[i]&1)||(P[Q[i]]>P[Q[i]+1]&&P[Q[i]]>P[Q[i]-1]));
else if(P[Q[i]]<P[Q[i]+1])SWAP(Q[i],Q[i]+1);
else SWAP(Q[i]-1,Q[i]);
}
printf("%d\n",tp);
for(int i=1;i<=tp;++i)
printf("%d%c",st[i]," \n"[i==tp]);
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | A - Make it Zigzag |
| ユーザ | xiaolilsq |
| 言語 | C++ (GCC 9.2.1) |
| 得点 | 400 |
| コード長 | 1008 Byte |
| 結果 | AC |
| 実行時間 | 27 ms |
| メモリ | 5552 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 400 / 400 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00-sample-001.txt, 00-sample-002.txt |
| All | 00-sample-001.txt, 00-sample-002.txt, 01-001.txt, 01-002.txt, 01-003.txt, 01-004.txt, 01-005.txt, 01-006.txt, 01-007.txt, 01-008.txt, 01-009.txt, 01-010.txt, 01-011.txt, 01-012.txt, 01-013.txt, 01-014.txt, 01-015.txt, 01-016.txt, 01-017.txt, 01-018.txt, 01-019.txt, 01-020.txt, 01-021.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00-sample-001.txt | AC | 8 ms | 3712 KiB |
| 00-sample-002.txt | AC | 3 ms | 3484 KiB |
| 01-001.txt | AC | 2 ms | 3588 KiB |
| 01-002.txt | AC | 2 ms | 3624 KiB |
| 01-003.txt | AC | 3 ms | 3488 KiB |
| 01-004.txt | AC | 2 ms | 3572 KiB |
| 01-005.txt | AC | 4 ms | 3556 KiB |
| 01-006.txt | AC | 2 ms | 3456 KiB |
| 01-007.txt | AC | 23 ms | 4968 KiB |
| 01-008.txt | AC | 13 ms | 4132 KiB |
| 01-009.txt | AC | 19 ms | 5180 KiB |
| 01-010.txt | AC | 10 ms | 3692 KiB |
| 01-011.txt | AC | 21 ms | 4876 KiB |
| 01-012.txt | AC | 25 ms | 5196 KiB |
| 01-013.txt | AC | 20 ms | 5320 KiB |
| 01-014.txt | AC | 21 ms | 5352 KiB |
| 01-015.txt | AC | 26 ms | 5468 KiB |
| 01-016.txt | AC | 21 ms | 5448 KiB |
| 01-017.txt | AC | 26 ms | 5528 KiB |
| 01-018.txt | AC | 27 ms | 5544 KiB |
| 01-019.txt | AC | 26 ms | 5448 KiB |
| 01-020.txt | AC | 14 ms | 5144 KiB |
| 01-021.txt | AC | 27 ms | 5552 KiB |