问题是许多人从小就接触到的:三个空瓶可以换一瓶酒,如果一次买N瓶酒,求一共可以喝到多少瓶酒?
代码如下,求指点:
[Java] 纯文本查看 复制代码 public class Test9_bottle {
public static void main(String[] args) {
System.out.println(fun1(7));
}
public static int fun1(int p) {
int sum = 0;
if (p != 0) {
sum += p + fun2(p);
}
return sum;
}
public static int fun2(int g) {
int count = 0;
if (g == 2 || g == 3) {
count++;
} else if (g > 3) {
count += g / 3 + fun2(g / 3 + g % 3);
}
return count;
}
}
那么问题来了,反着怎么求?即:如果想喝到M瓶酒,最少需要买几瓶?
|