C-Permutation

分析

发现规律

n为偶时,1 2 3 4    5 6 7 8

n为奇时,1 2 3 4    5 6 7  


AC Code

#include <iostream>
using namespace std;
const int maxn= 1e5+10;
int a[maxn];
int main() {
	int t,n,cnt;
	scanf("%d",&t);
	while(t--) {
		scanf("%d",&n);
		cnt=1;
		int len=n/2;
		if(n%2) len=n/2+1;
		for(int i=1;i<=len;i++){
			a[cnt]=i;cnt+=2;
		}
		cnt=2;
		for(int i=len+1;i<=n;i++){
			a[cnt]=i;cnt+=2;
		}	
		for(int i = 1; i < n; i++)
			printf("%d ",a[i]);
		printf("%d\n",a[n]);
	}
	return 0;
}

 


版权声明:本文为ordinarv原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。