//这道题的数学技巧比较强。 #include <stdio.h> #include <math.h> long int gcd(long int a,long int b) { if(a%b!=0) return gcd(b,a%b); else return b; } int main() { long int x,y; scanf("%ld%ld",&x,&y); long int i,num; num=0; for(i=x;i<=y;i++) { if(x*y%i==0&&x==gcd(i,x*y/i)) num++; } printf("%ld",num); return 0; }