三眼乌鸦十分口渴,他用自己的预知未来的能力在临死前飞到了一个巫师家,巫师说凛冬将至,我不会给你水,我只会给你11空瓶子,你可以拿空瓶子去换水,每三个空瓶子可以在狐狸哪里换到一瓶水,乌鸦必须喝到五瓶水才能活下来,最后他会活下来吗?
假设巫师给的不是11个空瓶子,而是给了11瓶水,问乌鸦最后总共会喝到多少瓶水?
转载标明链接:http://blog.csdn.net/wabiaozia/article/details/77105262
方式一:
方式二:递归
package aaa;
//方式一
public class aesop_Fables {
//转载标明链接http://blog.csdn.net/wabiaozia/article/details/77105262
public static void water(Integer a,Integer b){
if (a>=3) {
b=b+(a/3);
a=(a/3)+(a%3);
water(a,b);
}else {
System.out.println((a==2) ? ++b:b);
}
}
//方式二
public static Integer waters(Integer a,Integer b){
if (a>=3) {
b=b+(a/3);
a=(a/3)+(a%3);
return waters(a,b);
}else {
return((a==2) ? ++b:b);
}
}
public static void main(String[] args) {
// 现在有的水数
Integer c=11;
//方式一
water(c,0);
//方式二
System.out.println(waters(c,0));
}
}
附: