注解
1、简单模拟题,模拟此过程即可。
代码
#include <iostream>
#include <cstring>
using namespace std;
int main() {
int n;
cin>>n;
for(int i=0; i<n; i++) {
int m;
cin>>m;
int a[m+1];
memset(a, 0, sizeof(a));
int cnt = m;
int ite = 1;
while(cnt>3) {
int tmp = 0;
for(int j=1; j<m+1; j++) {
if(!a[j]) {
tmp++;
if(ite%2 && !(tmp%2)) {
a[j] = 1;
cnt--;
} else if(!(ite%2) && !(tmp%3)) {
a[j] = 1;
cnt--;
}
}
}
ite++;
}
cout<<"1";
for(int j=2; j<m+1; j++){
if(!a[j]){
cout<<" "<<j;
}
}
cout<<endl;
}
return 0;
}