时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:5722
解决:2438
题目描述:
用小于等于n元去买100只鸡,大鸡5元/只,小鸡3元/只,还有1/3元每只的一种小鸡,分别记为x只,y只,z只。编程求解x,y,z所有可能解。
输入:
测试数据有多组,输入n。
输出:
对于每组输入,请输出x,y,z所有可行解,按照x,y,z依次增大的顺序输出。
样例输入:
40
样例输出:
x=0,y=0,z=100 x=0,y=1,z=99 x=0,y=2,z=98 x=1,y=0,z=99
代码:
#include<stdio.h>
int main()
{
int n;
int cocks=0,hens,chicks;
while(scanf("%d",&n)!=EOF)/*输入买鸡的总价钱*/
{
cocks=0;
while(cocks<=n/5)
{
hens=0;
while(hens<=n/3)
{
chicks=100-cocks-hens;/*总共需要买100只鸡*/
if(chicks>=0&&5.0*cocks+3.0*hens+(float)chicks/3.0<=n)
printf("x=%d,y=%d,z=%d\n",cocks,hens,chicks);
hens++;
}
cocks++;
}
}
return 0;
}