我做入学题的时候,有如下。
/**
* 第十题:
* 28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝?
* 假如是50人,又需要买多少瓶可乐?(需写出分析思路)
* @param args
*/
public static void main(String[] args) {
System.out.println(demand(28));
}
public static int demand (int person){
for (int i = 1, sum = 1, temp = 3; ; i *=temp,sum +=i){
if (person <sum){
return person - (sum - i) + i/temp -(person -(sum -i)) /temp;
}
}
}
上边的程序是别人写的,但是我看不懂,求大神给解释一下好么?
|
|