rt,悬关,输出不了东西
#include <bits/stdc++.h>
using namespace std;
#define int long long
int x;
int a,b,c;
struct sx_list{
int qc;
int hj;
int sum;
}li[1000005];
void jx(int f,int zx,int s,int dy,int zh){
//cout<<endl;
//for(int i=1;i<=a;i++){
// cout<<" "<<li[i].sum<<" "<<li[i].qc<<" "<<li[i].hj<<endl<<endl;
//}
li[0].hj=li[zx].sum;
if(s==c+1) return ;
if(f==0){
li[li[zx].qc].hj=li[li[zx].hj].sum;
li[li[zx].hj].qc=li[li[zx].qc].sum;
li[zx].hj=li[dy].sum;
li[dy].qc=li[zx].sum;
li[zx].qc=0;
jx(1,li[li[zx].qc].sum,s+1,li[zx].sum,zh);
}
else{
li[li[zx].qc].hj=li[li[zx].hj].sum;
li[li[zx].hj].qc=li[li[zx].qc].sum;
li[zx].qc=li[zh].sum;
li[zh].hj=li[zx].sum;
li[zx].hj=0;
jx(1,li[li[zx].hj].sum,s+1,dy,li[zx].sum);
}
}
void csh(){
li[0].sum=0;
for(int j=1;j<=a;j++){
li[j].qc=li[j-1].sum;
li[j].sum=j;
li[j-1].hj=li[j].sum;
}
}
signed main(){
cin>>x;
for(int i=1;i<=x;i++){
memset(li,0,sizeof(li));
cin>>a>>b>>c;
//cout<<endl;
c%=(2*a);
csh();
jx(b,(a+1)/2,1,1,a);
int aa=li[0].hj;
//cout<<"\n\n "<<a<<"\n\n";
for(int j=1;j<=a;j++){
cout<<aa<<" ";
aa=li[a].hj;
}
cout<<endl;
}
return 0;
}