问题 C: 百鸡问题
时间限制: 1 Sec 内存限制: 32 MB题目描述
用小于等于n元去买100只鸡,大鸡5元/只,小鸡3元/只,还有1/3元每只的一种小鸡,分别记为x只,y只,z只。编程求解x,y,z所有可能解。
输入
测试数据有多组,输入n。
输出
对于每组输入,请输出x,y,z所有可行解,按照x,y,z依次增大的顺序输出。
样例输入
45
样例输出
x=0,y=0,z=100
x=0,y=1,z=99
x=0,y=2,z=98
x=0,y=3,z=97
x=0,y=4,z=96
x=1,y=0,z=99
x=1,y=1,z=98
x=1,y=2,z=97
x=2,y=0,z=98
#include<stdio.h>
int main()
{
double n;
while(scanf("%lf",&n)!=EOF)
{
int b,m;
for(b=0;b<=(int)(n/5);b++)
{
if((double)b*5>n||b>100)
break;
for(m=0;m<=(int)((n-b)/3);m++)
{
if((n-(double)m*3-(double)b*5)*3<100-b-m||b>100||m>100||100-b-m>100||b<0||m<0||100-b-m<0)
break;
printf("x=%d,y=%d,z=%d\n",b,m,100-b-m);
}
}
}
return 0;
}