有20元钱,一元可以买一瓶汽水,两个空瓶可以换一瓶汽水,总共可以喝多少瓶 30
4个回答
展开全部
20元买20瓶,喝完兑换10瓶(30),10瓶喝完兑换5瓶(35),5瓶兑换2瓶(37)剩余一个空瓶,喝2瓶在兑换1瓶(38),喝完加上剩余的1个 可以兑换一瓶(39),1瓶喝完交给对方换一瓶(40),喝完把瓶子给人家(等于先预借一个瓶,喝完空瓶再兑换) 40瓶
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用递归的方法
//第一题
public static int sum(int n) {
int s=n;
if(n>1)
s+=sum(n-1);
return s;
}
//第二题
/**
* 计算空瓶瓶和盖盖能换多少瓶的方法。
* @param p 空瓶瓶个数
* @param g 盖盖个数
* @return 兑换的汽水瓶数
*/
public static int Cola(int p,int g) {
int s=p/2+g/3 ;//第一次兑换的瓶数
if(g>=3 || p>=2) {//能够兑换的条件
//一瓶汽水就有一个空瓶和瓶盖,不要忘记兑换剩下的空瓶和盖子
s+=Cola(s+p%2,s+g%3);
}
return s;
}
/**
* 计算能喝汽水的总瓶数的方法
* @param y 买汽水的钱
* @return 能喝汽水的总瓶数
*/
public static int AllCola(int y) {
//买的汽水和兑换的汽水之和为所求
return y+Cola(y, y);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询