当前位置: 代码迷 >> 综合 >> acm 2040
  详细解决方案

acm 2040

热度:18   发布时间:2023-12-22 07:34:04.0

#include<iostream>//这道题的本质就是找一个数的约数,但是要注意当为o的时候
#include<cstdio>
#include<cmath>
using namespace std;
int main(void)
{
  int n,x,y,i,j;
scanf("%d",&n);

for(int loop=0;loop<n;loop++)
{
    scanf("%d%d",&x,&y);
j=0;
if(x!=1)
   j=1;
   for(i=2;i<=sqrt(1.0*x);i++)
{
    if(x%i==0)
       j+=(i+(int)(x/i));
   
}
if(j!=y)
 
 {
   printf("NO\n");
continue;
}
 
j=0;if(y!=1)j=1;
for(i=2;i<=sqrt(1.0*y);i++)
  if(y%i==0)
      j+=(i+(y/i));
if(j!=x)
 printf("NO\n");
else
printf("YES\n");

 

 

}

}