#include<bits/stdc++.h> using namespace std; long long gcd(int x,int y) { return x%y==0? y:gcd(y,x%y); } int main() { long long x,y; while(cin>>x>>y) { int num=0; for(int i=x; i*i<=x*y; i++) { if(i%x==0&&y%i==0) { long long a=i; long long b=x*y/i; long long max=1; if(y%b==0&&b%x==0) { if(a<=b) { max=gcd(a,b); } if(max==x) { if(a==b) { num++; } else { num+=2; } } } } } cout<<num<<endl; } return 0; } |
Double click to view unformatted code.