rt,如下代码 70 分,其余全 T:
#include<bits/stdc++.h>
#define int long long
using namespace std;
int t;
int gcd(int a,int b){
if(b==0) return a;
return gcd(b,a%b);
}
void solve(){
int x,z;
cin>>x>>z;
if(z%x!=0){
cout<<"-1"<<endl;
return;
}
int k=z/x;
int num=sqrt(gcd(k,x*x));
if(num*num!=gcd(k,x*x)){
cout<<"-1"<<endl;
return;
}
int ans=k/sqrt(gcd(k,x*x));
cout<<ans<<endl;
}
signed main(){
cin>>t;
while(t--) solve();
}