1. 程式人生 > >C-Permutation

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;
}