黑马程序员技术交流社区

标题: 猴子吃桃问题 [打印本页]

作者: treecolor166    时间: 2014-1-2 22:36
标题: 猴子吃桃问题
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少最好写清楚思路和步骤 用递归如何去实现
作者: 道逍云心    时间: 2014-1-2 23:20
public int fun (int n)
{
if(n==1)
return 1;
fun(n-1)=fun(n)/2-1;
}
作者: 张昶    时间: 2014-1-3 10:24
package com.itheima;

public class GetPeach {
     * @param args
      * @param numOfDays 总天数
      * @return 第一天总共摘的桃子数
      */
     public static void main(String[] args) {
         // TODO Auto-generated method stub
           GetPeach getPeach = new GetPeach();
            int num = getPeach.getNumOfPeachFirstDay(10);
            System.out.println(" 猴子第一天一共摘下了"+num+"个桃子");
     }
     
      public int getNumOfPeachFirstDay(int numOfDays) {
             if (numOfDays < 1) {
                 throw new RuntimeException("NumOfDays must more than zero!");
             }
             if (numOfDays == 1) {
                 return 1;
             }
             //第numOfDays-1的桃子数
             int num =getNumOfPeachFirstDay(numOfDays - 1);
             return ( num+ 1) * 2;
         }

}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2