1元一瓶饮料,两个空瓶可以换一瓶饮料,三个瓶盖可以换一瓶饮料,20块钱可以喝多少瓶饮料?
1条回答 默认 最新
- threenewbee 2016-07-31 14:53关注
package test1.test1; public class Ale { static int money = 20; // 多少钱 static int per = 1; // 多少钱买一瓶 >0 static int empty = 2; // 多少空瓶换一瓶 >0 static int cap = 3; // 多少瓶盖换一瓶 >0 static int sum = 0; // 总数 public static void main(String[] args) { for(int i=1;i<=20;i++) { money = i; cal(money/per,0,0); System.out.println(money+"元钱共可以喝:"+sum+" 瓶"); sum = 0; } } /** * 计算方法 * @param i 换一轮之后还没喝的瓶数 * @param j 空瓶数 * @param k 瓶盖数 */ public static void cal(int i,int j,int k) { int i1=0,j1=0,k1=0; sum += i; // 一开始喝完 j += i;// 喝完后的空瓶数 k += i;// 喝完后的瓶盖数 if(j >= empty) {// 空瓶可以换 i1 += j/empty; j1 = j%empty; // 换了之后的空瓶数 }else { // 空瓶不能换 j1 = j; } if(k >= cap) {// 瓶盖可以换 i1 += k/cap; k1 = k%cap; // 换了之后的瓶盖数 }else { // 瓶盖不能换 k1 = k; } if(i1 >0 || j1 >= empty || k1 >= cap) { // 如果可以换则继续 cal(i1,j1,k1); } } }
运行结果:
1元钱共可以喝:1 瓶
2元钱共可以喝:5 瓶
3元钱共可以喝:11 瓶
4元钱共可以喝:17 瓶
5元钱共可以喝:23 瓶
6元钱共可以喝:29 瓶
7元钱共可以喝:35 瓶
8元钱共可以喝:41 瓶
9元钱共可以喝:47 瓶
10元钱共可以喝:53 瓶
11元钱共可以喝:59 瓶
12元钱共可以喝:65 瓶
13元钱共可以喝:71 瓶
14元钱共可以喝:77 瓶
15元钱共可以喝:83 瓶
16元钱共可以喝:89 瓶
17元钱共可以喝:95 瓶
18元钱共可以喝:101 瓶
19元钱共可以喝:107 瓶
20元钱共可以喝:113 瓶本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥30 类鸟群Boids——仿真鸟群避障的相关问题
- ¥15 CFEDEM自带算例错误,如何解决?
- ¥15 有没有会使用flac3d软件的家人
- ¥20 360摄像头无法解绑使用,请教解绑当前账号绑定问题,
- ¥15 docker实践项目
- ¥15 数电几道习题,写出作答过程,ai一律不采用
- ¥15 利用pthon计算薄膜结构的光导纳
- ¥15 海康hlss视频流怎么播放
- ¥15 Paddleocr:out of memory error on GPU
- ¥30 51单片机C语言数码管驱动单片机为AT89C52