python百钱百鸡问题_Manchester-百钱百鸡问题(很快)

解题思路:

1.首先定义变量coincock(可用来买公鸡的钱),coinhen(可用来买母鸡的钱),coinchi(可用来买小鸡的钱);

2.先买公鸡,买后剩余的钱存在coinhen里; 买完后剩余的钱可以买coinhen/3只母鸡;

3.然后买母鸡,买后剩余的钱存在coinchi里; 买完后剩余的钱可以买coinchi*3只小鸡;

4.最后把coinchi全买小鸡;

5.看买的公鸡+母鸡+小鸡是否等于100,等于则输出解;

注意事项:

不可以就用一个变量存每个过程剩余的钱:for ( int cock = 0; cock <= 12; cock++ )

{

coin = 100;

coin = coin - (5 * cock);

for ( int hen = 0; hen <= (coin / 3); hen++ )

{

coin = coin - (3 * hen);

if ( (cock + hen + coin * 3 == 100) )

printf( "cock=%d,hen=%d,chicken=%d\n", cock, hen, coin * 3 );

}

}

coin买完母鸡后就变了,再次返回买母鸡时,可买的母鸡数不对的;

参考代码:#include

int main()

{

int coincock, coinhen, coinchi;

for ( int cock = 0; cock <= 12; cock++ )

{

coincock = 100;

coinhen = coincock - (5 * cock);

for ( int hen = 0; hen <= (coinhen / 3); hen++ )

{

coinchi = coinhen - (3 * hen);

if ( (cock + hen + coinchi * 3 == 100) )

printf( "cock=%d,hen=%d,chicken=%d\n", cock, hen, coinchi * 3 );

}

}

return(0);

}

别忘点赞哦-.-

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值