zoukankan      html  css  js  c++  java
  • 整数解-hdu-2092

    整数解

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 16412    Accepted Submission(s): 5682

    Problem Description

    有二个整数,它们加起来等于某个整数,乘起来又等于另一个整数,它们到底是真还是假,也就是这种整数到底存不存在,实在有点吃不准,你能快速回答吗?看来只能通过编程。
    例如:
    x + y = 9,x * y = 15 ? 找不到这样的整数x和y
    1+4=5,1*4=4,所以,加起来等于5,乘起来等于4的二个整数为1和4
    7+(-8)=-1,7*(-8)=-56,所以,加起来等于-1,乘起来等于-56的二个整数为7和-8

     

     

    Input

    输入数据为成对出现的整数n,m(-10000<n,m<10000),它们分别表示整数的和与积,如果两者都为0,则输入结束。

     

     

    Output

    只需要对于每个n和m,输出“Yes”或者“No”,明确有还是没有这种整数就行了。

     

     

    Sample Input

    9 15

    5 4

    1 -56

    0 0

     

     

    Sample Output

    No

    Yes

    Yes

    解题思路:

    1、 解方程:判断条件是 x*(n-x)==m;可以减少运行时间。

     

    程序代码:

    /*#include<stdio.h>

    int main()

    {

        int x,y,n,m,k;

        while(scanf("%d %d",&n,&m)&&(n!=0||m!=0))

        {

          k=0;

          for(x=-10000;x<=10000;x++)

           {

           for(y=-10000;y<=10000;y++)

            {

              if(x+y==n&&x*y==m)

               {k=1;}

            }

            if(k==1)

            break;

            }

            if(k==1)

            printf("Yes ");

            else

            printf("No ");

        }

        return 0;

    } //超时

    */

     

    #include<stdio.h>

    int main()

    {

        int x,y,n,m,k;

        while(scanf("%d %d",&n,&m)&&(n!=0||m!=0))

        {

          k=0;

          for(x=-10000;x<=10000;x++)          //少循环一次,可以减少时间。

           {

              if(x*(n-x)==m)

               {k=1;break;}

           

            }

            if(k==1)

            printf("Yes ");

            else

            printf("No ");

        }

        return 0;

    }

     

  • 相关阅读:
    BZOJ1293: [SCOI2009]生日礼物
    BZOJ2326: [HNOI2011]数学作业
    BZOJ1179: [Apio2009]Atm
    树链剖分的一个小细节
    BZOJ1146: [CTSC2008]网络管理Network
    BZOJ1984: 月下“毛景树”
    BZOJ3196: Tyvj 1730 二逼平衡树
    BZOJ1579: [Usaco2009 Feb]Revamping Trails 道路升级
    BZOJ1674: [Usaco2005]Part Acquisition
    Babel 在浏览器环境使用方法
  • 原文地址:https://www.cnblogs.com/zhouhongweihpu/p/3233208.html
Copyright © 2011-2022 走看看