样例最后一个不知道为什么T了,代码都快和题解一样了qwq
Code:
#include<bits/stdc++.h>
using namespace std;
long long t,n,m,a,ans;
int main(){
ios::sync_with_stdio(false);
cin>>t;
while(t--){
cin>>a>>m;
n=m/__gcd(a,m);
ans=n;
for(int i=2;i*i<=n;i++){
if(n%i==0){
ans=ans/i*(i-1);
}
while(n%i==0) n/=i;
}
if(n>1) ans=ans/n*(n-1);
cout<<ans<<'\n';
}
return 0;
}