#include <bits/stdc++.h>
#define int long long
#define endl '\n'
using namespace std;
const int N=2e5+5;
int n,a[N],x;
void solve()
{
cin>>n>>x;
if(n%x)
{
cout<<"-1\n";
return;
}
for(int i=1;i<=n;i++) a[i]=i;
a[1]=x,a[n]=1;
for(int i=2*x;i<=n;i+=x)
{
if(n%i==0)
{
a[x]=i;
x=i;
}
}
for(int i=1;i<=n;i++) cout<<a[i]<<" ";
cout<<endl;
}
signed main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int T;
cin>>T;
while(T--) solve();
return 0;
}
感觉这个题的这个构造方式很巧妙,所以记下来(模仿的大佬的代码,大佬就是强QWQ)