提出 #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
結果
AC × 2
AC × 23
セット名 テストケース
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