|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
题目描述:
已知鸡和兔的总数量
nn
n,总腿数为
mm
m。请输出鸡和兔的只数。
输入:
每行两个整数(不超过100000)分别表示
n,mn,m
n,m。多组输入,以EOF做结束。
输出:
每行输出两个数,分别是鸡和兔的数目。如果不能求解,则输出"No answer"
- #include<stdio.h>
- int main()
- {
- int n[100],m[100],x[100],y[100],i,k=0;
- for(i=0;i<100;i++)
- {
- scanf("%d %d",&n[i],&m[i]);
- k+=1;
- if(n[i]==EOF&&m[i]==EOF) break;
- }
- for(i=0;i<k;i++)
- {
- x[i] = (m[i] -2*n[i])/2;
- y[i] = n[i] - x[i];
- }
- for(i=0;i<k;i++)
- {
- if(x[i] < 0 ||y[i] < 0||m[i]%2!=0)
- printf("No answer\n");
- else
- printf("%d %d\n",y[i],x[i]);
-
- }
- return 0;
- }
复制代码
EOF的判断条件是while(scanf("%d%d",&n,&m)!=EOF),下面是我写的代码,你看看能不能看懂
#include<stdio.h>
int main()
{
int m,n,x,y;
while(scanf("%d%d",&m,&n)!=EOF)
{
x = (m -2*n)/2;
y = n - x;
if(x < 0 ||y < 0||m%2!=0)
printf("No answer\n");
else
printf("%d %d\n",y,x);
}
return 0;
}
|
|