#include <stdio.h> int ax[10000]; int ay[10000]; int main() { int x,y; scanf("%d %d",&x,&y); int i; int jx=0,jy=0; int sumx=0,sumy=0; //分别求x和y的所有约数 for(i=1; i<=x/2; i++) { if(x%i==0) { ax[jx]=i; jx++; } } for(i=1; i<=y/2; i++) { if(y%i==0) { ay[jy]=i; jy++; } } //求两个数的约数和 for(i=0; i<jx; i++) sumx+=ax[i]; for(i=0; i<jy; i++) sumy+=ay[i]; if(sumx==y&&sumy==x) printf("yes\n"); else printf("no\n"); return 0; } /************************************************************** Problem: 1862 User: admin Language: C Result: Accepted Time:70 ms Memory:1224 kb ****************************************************************/