百钱百鸡——求一重循环解决问题的解法
如题,百钱百鸡的问题描述:100钱怎么样买100只鸡,公鸡单价5钱,母鸡单价3钱,小鸡三只1钱;求只用一个循环解出这个问题。
程序代码:#include <stdio.h>
int main(void)
{
int i=0,j=1,k,m=5,g=3,x=1,s=100;
while(1)
{
k=(s-i-j)/3;
if(i*m+j*g+k*x==s&&i+j+k*3==s)
printf("%d %d %d\n",i,j,k*3);
if(i>=(s-g-x)/m)break;
if(j>=(s-m-x)/g)i++,j=1;
j++;
}
return 0;
}[ 本帖最后由 UserYuH 于 2009-10-26 17:07 编辑 ]








楼上直接拿结果的规律来算。



(要不然有人找我解释)
*/