zoukankan      html  css  js  c++  java
  • 问题一百三十二:自然数对

    Description


    知道2个自然数A,B,如果A+B,A-B都是平方数,那么A,B就是自然数对。要求写程序判断给定的2个数A,B是否为自然数对。 


    Input




    第一行有1个整数T,表示有T组测试数据。第二行~第T+1行,每行有2个数据A,B,其中0<=A+B<=2^31且A>B。




    Output


    对于每组测试数据输出一行,包含"YES"或者"NO"。"YES"表示该数对是自然数对,否则输出"NO"。


    Sample Input




    2
    17 8
    3 1


    Sample Output




    YES
    NO

     

    #include <stdio.h>
    #include <math.h>
    
    int square(int m);
    
    int main()
    {   
    	int n;
    	int a;
    	int b;
        
    	scanf("%d", &n);
    
    	while(n--)
    	{     
    		scanf("%d %d", &a, &b);
    
    		if(square(a-b) && square(a+b))
    		{
    		   printf("YES");
    		}
    		else
    		{
    			printf("NO");
    		}
    		if(n>0)
    		{
    		   printf("\n");
    		}
    	}
    
    	 return 0;
    }
    
    int square(int m)
    {
        int i;
    	int flag=0;
    
    	i=sqrt(m);
    
    	if(i*i==m)
    	{
    	   flag=1;
    	}
    
    	return flag;
    }


       


  • 相关阅读:
    c++笔记3
    c++笔记2
    c++笔记1
    零点追踪(零点及量程补偿)
    优秀软件:
    Hart协议
    RL_RTX函数
    keil-rtx
    电源模块选型
    RTX51 Tiny
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3052913.html
Copyright © 2011-2022 走看看