杭电2092,哪错了,为啥都WA,帮看下~~
#include<stdio.h>voidmain(){inti,n,m,flag;while(scanf("%d%d",&n,&m)!=EOF){if(n==0&&m=...
#include<stdio.h>
void main()
{
int i,n,m,flag;
while(scanf("%d%d",&n,&m)!=EOF)
{
if(n==0&&m==0)
break;
flag=0;
for(i=-9999;i<10000;i++) 这为什么不行????
if(i*(n-i)==m)
{
printf("YES\n");
flag=1;
break;
}
if(!flag)
printf("NO\n");
}
}
/*#include<stdio.h>
#include<math.h>
void main()
{
int m,n;
double x1,x2,s;
while(scanf("%d%d",&n,&m)!=EOF)
{
if(m==0&&n==0)
break;
s=n*n-4*m; 还是错呀呀??????!!
if(s<0)
printf("NO\n");
else
{
s=sqrt(s);
x1=(n+s)/2;
x2=(n-s)/2;
if(fabs(x1-(int)x1)<10e-9||fabs(x2-(int)x2)<10e-9)
printf("YES\n");
else
printf("NO\n");
}
}
}*/
http://acm.hdu.edu.cn/showproblem.php?pid=2092 展开
void main()
{
int i,n,m,flag;
while(scanf("%d%d",&n,&m)!=EOF)
{
if(n==0&&m==0)
break;
flag=0;
for(i=-9999;i<10000;i++) 这为什么不行????
if(i*(n-i)==m)
{
printf("YES\n");
flag=1;
break;
}
if(!flag)
printf("NO\n");
}
}
/*#include<stdio.h>
#include<math.h>
void main()
{
int m,n;
double x1,x2,s;
while(scanf("%d%d",&n,&m)!=EOF)
{
if(m==0&&n==0)
break;
s=n*n-4*m; 还是错呀呀??????!!
if(s<0)
printf("NO\n");
else
{
s=sqrt(s);
x1=(n+s)/2;
x2=(n-s)/2;
if(fabs(x1-(int)x1)<10e-9||fabs(x2-(int)x2)<10e-9)
printf("YES\n");
else
printf("NO\n");
}
}
}*/
http://acm.hdu.edu.cn/showproblem.php?pid=2092 展开
1个回答
展开全部
for(i=-20000;i<=20000;i++) 这为什么不行????
这样应该就对了
这样应该就对了
追问
(⊙o⊙)…还是错??!
追答
你YES,NO大小写搞错了
#include
void main()
{
int i,n,m,flag;
while(scanf("%d%d",&n,&m)!=EOF)
{
if(n==0&&m==0)
break;
flag=0;
for(i=-20000;i<=20000;i++)
if(i*(n-i)==m)
{
printf("Yes\n");
flag=1;
break;
}
if(!flag)
printf("No\n");
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询