题解 | #百钱买百鸡问题#
百钱买百鸡问题
https://www.nowcoder.com/practice/74c493f094304ea2bda37d0dc40dc85b
解题思路
本题要求的计算时间较短,因此需要把每个值的上限尽可能设置的小
题目中:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一
可以得到100元单买一种鸡且鸡的数目不超过100。鸡翁最多20只、鸡母最多100/3只、鸡雏最多100只
所以在产生对应鸡数量上限的时候可以卡的比较死如代码中所示,然后当同时满足鸡数量相加等于100且价格等于100时打印各种鸡的数量
#include <stdio.h>
int main() {
int a=0;
scanf("%d",&a);
int i=0,j=0,k=0;
for(i=0;i<=20;i++)//鸡翁
{
for(j=0;j<=100/3;j++)//鸡母
{
for(k=0;k<100;k+=3)//鸡雏
{
if((i*5+j*3+k/3==100)&&(i+j+k==100))
{
printf("%d %d %d\n",i,j,k);
}
else
{
continue;
}
}
}
}
return 0;
}

