整数解
トピック説明:
整数まで追加二つの整数があります乗り上げに等しく、最後に真または偽である別の整数が、これはそれが存在するかどうか最終的には整数であり、それは確か少しではありません、あなたはすぐにそれに答えることができます?それが唯一のプログラミングによりらしいです。
例えば:
。?X = Y + 9、Y = X * 15ないような整数x及びy
1 * 4 + 4 = 5,1 = 4、従って、4に等しい整数2で、最大5まで追加、図1及び図4に
+ 7( - 8)= - 1.7 *( - 8)= - 56、従って、乗算、-1に7に等しい整数2を加算し、-8 -56に入力
入力データがN、Mのペアの整数である(-10000 <N、M <10000)の両方が0、入力端である場合、整数の和と積を表します。
出力
のみ各n及びmのために、出力「はい」または「いいえ」は、明らかにライン上のそのような整数がまだ存在しません。
サンプル入力
9 15 5 4 1 -56 0 0サンプル出力
ノー はい はい
分析:
∵x+ Y = N ∴y= NX ∵xy= M ∴(NX)= M * X ∴x* X - N X + M = 0 、T = N * N * 4メートル |
その答えによって:
#include<stdio.h>
#include<math.h>
int main(){
int n,m,t,t1;
while(scanf("%d %d",&n,&m)!=EOF){
if(n==0&&m==0)break;
t=n*n-4*m; //△=b*b-4*a*c
t1=(int)sqrt(t);
if(t>=0&&t==t1*t1){ //△>=0表示方程有解并且解都为整数 (关键)
printf("Yes\n");
}else{
printf("No\n");
}
}
return 0;
}