Posted on 2007-05-29 10:08
my 阅读(712)
评论(0) 编辑 收藏 所属分类:
算法和数据结构
/*有104瓶啤酒,每3个空瓶子能换一瓶新啤酒,问能喝到多少瓶啤酒?//递归算法*/
class Test
{
int sum=104;//开始喝的104瓶啤酒
int nullsum=104;//空酒瓶
public static void main(String[] args)
{
Test test = new Test();
test.printSum();
}
public void printSum(){
System.out.println("可以喝到"+getSum()+"瓶酒");
}
public int getSum(){
int tmp=0;
if(nullsum>=3){
tmp=nullsum/3;//喝了多少瓶
sum+=tmp;
nullsum=nullsum%3;//还剩多少空瓶子
nullsum+=tmp;
getSum();
}
else{
System.out.println("最后剩余空瓶子"+nullsum);
}
return sum;
}
}
//问题是当剩2个空瓶子的时候,如果老板肯借一瓶给你就可以多喝一瓶,呵呵