瓶子瓶盖换酒问题

这篇博客探讨了一个有趣的数学问题:初始投入20元购买啤酒,每瓶啤酒可得一个瓶盖,4个瓶盖能换一瓶,2个空瓶也能换一瓶。通过分析两种解决思路,计算出在这样的条件下能喝到多少瓶啤酒。
摘要由CSDN通过智能技术生成

1.需求

两块钱一瓶啤酒,
四个盖子可以换一瓶啤酒。
2个瓶子可以换一瓶啤酒。
问: 如果手上有20块钱,一共喝了多少瓶啤酒?

2.思路一:

	拿所有的瓶子去换酒,
			更新瓶盖数
			更新瓶子数
			更新总数
				然后瓶盖能换酒就一直换
					更新瓶子数
					更新瓶盖数
					更新总数
class Wine{
	public static void main(String[] args){
		int money = 20;
		int price = 2;
		int num =0;
		
		int result = money / price;
		int box = money / price;
		int gai=money / price;
		//先换瓶子(原因:初始3瓶酒也能进行循环换酒)
		for (;box>=2;){
				num = box/2;
				box = box%2+num;
				gai = gai+num;
				result = result + num;
				//只要瓶盖数大于4就一直换酒
				for (;gai>=4;){
					num = gai/4;				//每次换的个数
					gai = gai%4+num;			//每次换完之后瓶盖的数量
					box = box + num;			//每次换完后更新瓶子数量
					result = result + num;		//每次换完之后更新总数
				}
			}
		System.out.println(result);		
	}
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值