#include<stdio.h> #include<math.h> int gbs(int a,int b){ int t,i; if(a>b) { t=a; a=b; b=t; } if(b%a==0) return b; for( i=b;i<=a*b;i++) if(i%a==0&&i%b==0) break; return i; } int gys(int a,int b){ int t,i; if(a>b) { t=a; a=b; b=t; } if(b%a==0) return a; for(i=a;i>0;i--) if(b%i==0&&a%i==0) return i; } int main(){ int a,b,i,j,c; while(scanf("%d %d",&a,&b)!=EOF){ c=0; for(i=a;i<=sqrt(a*b);i++){ for(j=b;j>=sqrt(a*b);j--) if(gys(i,j)==a&&gbs(i,j)==b) c++; } printf("%d\n",2*c); } } |
Double click to view unformatted code.