输入第一行为整数m表示有m组测试数据,接下来m行每行一个整数N,N不超过50。
输出m行,每行表示题目所求,用空格隔开。
1 4
3 2 4 1
#include<stdio.h> #include<stdlib.h> #include<math.h> #include<string.h> #include<limits.h> int main() { int n; scanf("%d",&n); while(n>0) { int num; scanf("%d",&num); int len=num; int people[num]; for(int i=0;i<num;i++) { people[i]=i; } int index=0; while(len>0) { //报数1 while(people[(index+num)%num]==-1) index++; index++; //报数2 while(people[(index+num)%num]==-1) index++; index++; //报数3 while(people[(index+num)%num]==-1) index++; printf("%d ",people[(index+num)%num]+1); people[(index+num)%num]=-1; index++; len--; } printf("\n"); n--; } }