A+B/A*B求A和B
生活随笔
收集整理的這篇文章主要介紹了
A+B/A*B求A和B
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Problem G Time Limit : 1000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other)Total Submission(s) : 14 Accepted Submission(s) : 4Font: Times New Roman | Verdana | GeorgiaFont Size: ← →Problem Description有二個(gè)整數(shù),它們加起來(lái)等于某個(gè)整數(shù),乘起來(lái)又等于另一個(gè)整數(shù),它們到底是真還是假,也就是這種整數(shù)到底存不存在,實(shí)在有點(diǎn)吃不準(zhǔn),你能快速回答嗎?看來(lái)只能通過(guò)編程。
例如:
x + y = 9,x * y = 15 ? 找不到這樣的整數(shù)x和y
1+4=5,1*4=4,所以,加起來(lái)等于5,乘起來(lái)等于4的二個(gè)整數(shù)為1和4
7+(-8)=-1,7*(-8)=-56,所以,加起來(lái)等于-1,乘起來(lái)等于-56的二個(gè)整數(shù)為7和-8Input輸入數(shù)據(jù)為成對(duì)出現(xiàn)的整數(shù)n,m(-10000<n,m<10000),它們分別表示整數(shù)的和與積,如果兩者都為0,則輸入結(jié)束。Output只需要對(duì)于每個(gè)n和m,輸出“Yes”或者“No”,明確有還是沒(méi)有這種整數(shù)就行了。Sample Input9 15
5 4
1 -56
0 0Sample OutputNo
Yes
Yes#include<iostream>
#include<stdio.h>
#include<cmath>
using namespace std;
int main()
{int x,y,i,j;float x1,y1,min1,min2,max,l;while(scanf("%d%d",&x,&y),x||y){l=-1;if(x==0){if(y<0){for(i=sqrt(double(-y))-1;i<=sqrt(double(-y))+1;i++)if(-i*i==y)l=1;}}if(y==0)l=1;if(x<0&&y>0){x=fabs(double(x));y=fabs(double(y));}if(x>0&&y>0){x1=x/2.0;y1=sqrt(double(y));max=x1>=y1?x1:y1;min1=x1<=y1?x1:y1;min2=x<=y?x:y;for(i=max;i<=min2;i++){j=x-i;if((j<=min1)&&(i*j==y)){l=1;break;}}}if(x<0&&y<0){y1=sqrt(double(-y));for(i=y1;i<=-y;i++){j=x+i;if((j<=y1)&&(i*j==-y)){l=1;break;}}}if(x>0&&y<0){y1=sqrt(double(-y));for(i=1;i<=y1;i++){j=x+i;if((i*j==-y)&&(j<=-y)){l=1;break;}}}if(l==1)printf("Yes\n");elseprintf("No\n");}return 0;
}
轉(zhuǎn)載于:https://www.cnblogs.com/heqinghui/archive/2012/08/01/2618804.html
總結(jié)
以上是生活随笔為你收集整理的A+B/A*B求A和B的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 关于HOOK API Lib 0.1 F
- 下一篇: 自定义标签 (转载)