欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實(shí)現(xiàn)的猴子吃桃問題算法示例

 更新時(shí)間:2017年10月17日 11:05:42   作者:弗蘭隨風(fēng)小歡  
這篇文章主要介紹了Java實(shí)現(xiàn)的猴子吃桃問題算法,簡單描述了猴子吃桃問題并結(jié)合實(shí)例形式給出了java解決猴子吃桃問題的具體實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了Java實(shí)現(xiàn)的猴子吃桃問題算法。分享給大家供大家參考,具體如下:

猴子吃桃問題

概述:猴子第一天摘下N個(gè)桃子,當(dāng)時(shí)就吃了一半,還不過癮,就又吃了一個(gè);第二天又將剩下的桃子吃掉了一半,又多吃了一個(gè);以后每天都吃前一天身下的一半零一個(gè),到第n天再想吃的時(shí)候就只剩下一個(gè)桃子了,求第一天共摘了多少個(gè)桃子?

思路及演算步驟(求出共摘多少桃子的函數(shù)表達(dá)式):

離現(xiàn)在的天數(shù)作為變量

f(1) = 1 (剩下桃子的數(shù)目)
f(2) = f(3) - (吃掉了一些) =   f(3) -(f(3)/2+1)   =   f(3)/2-1
....
f(n) = f(n+1)/2-1(遞推公式)

所以可以得到遞推公式:

f(n-1) = f(n)/2-1   =>  2f(n-1) =  f(n) - 2  => f(n)=2f(n-1) +2 (這是我們想要的公式)

然后可以求出離現(xiàn)在任何天數(shù)時(shí),猴子共摘下的桃子!

例如f(10)意思就是離現(xiàn)在10天的時(shí)候(10天以前猴子擁有的桃子的個(gè)數(shù))!

下面給出具體的代碼:

package javastudy;
import java.util.Scanner;
public abstract class Testit2 {
  // 猴子吃桃問題
  public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    int n;
    n = in.nextInt();
    System.out.println(f(n));
    in.close();
  }
  static int f(int n) {
    if (n == 1)   //離現(xiàn)在只有一天的時(shí)候那就只剩下一個(gè)!
    return 1;
    return 2 * f(n - 1) + 2;
  }
}

更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對大家java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • SpringBoot的父級依賴:spring-boot-starter-parent詳解

    SpringBoot的父級依賴:spring-boot-starter-parent詳解

    SpringBoot通過父級依賴spring-boot-starter-parent實(shí)現(xiàn)項(xiàng)目快速構(gòu)建,它依賴于spring-boot-dependencies來統(tǒng)一管理項(xiàng)目中的依賴版本,省去了手動(dòng)指定版本信息的麻煩,這種機(jī)制不僅規(guī)定了默認(rèn)的Java版本和編碼格式
    2024-09-09
  • 詳解前后端分離之Java后端

    詳解前后端分離之Java后端

    這篇文章主要介紹了詳解前后端分離之Java后端,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • springboot接收日期類型參數(shù)的操作方法

    springboot接收日期類型參數(shù)的操作方法

    如果使用Get請求,直接使用對象接收,則可以使用@DateTimeFormat注解進(jìn)行格式化,本文重點(diǎn)給大家介紹springboot接收日期類型參數(shù)的方法,感興趣的朋友一起看看吧
    2024-02-02
  • java中刪除數(shù)組中重復(fù)元素方法探討

    java中刪除數(shù)組中重復(fù)元素方法探討

    這個(gè)是一個(gè)老問題,但是發(fā)現(xiàn)大多數(shù)人說的還不夠透。小弟就在這里拋磚引玉了,歡迎拍磚
    2013-10-10
  • 詳解Java sort()數(shù)組排序(升序和降序)

    詳解Java sort()數(shù)組排序(升序和降序)

    這篇文章主要介紹了詳解Java sort()數(shù)組排序(升序和降序),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • idea 在springboot中使用lombok插件的方法

    idea 在springboot中使用lombok插件的方法

    這篇文章主要介紹了idea 在springboot中使用lombok的相關(guān)資料,通過代碼給大家介紹在pom.xml中引入依賴的方法,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2021-08-08
  • Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:冒泡排序 Bubble Sort

    Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:冒泡排序 Bubble Sort

    這篇文章主要介紹了Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:冒泡排序 Bubble Sort,本文直接給出實(shí)現(xiàn)代碼,代碼中包含詳細(xì)注釋,需要的朋友可以參考下
    2015-06-06
  • java正則表達(dá)式匹配規(guī)則超詳細(xì)總結(jié)

    java正則表達(dá)式匹配規(guī)則超詳細(xì)總結(jié)

    正則表達(dá)式并不僅限于某一種語言,但是在每種語言中有細(xì)微的差別,下面這篇文章主要給大家介紹了關(guān)于java正則表達(dá)式匹配規(guī)則的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-10-10
  • SpringBoot導(dǎo)入mail依賴報(bào)錯(cuò)問題解決

    SpringBoot導(dǎo)入mail依賴報(bào)錯(cuò)問題解決

    這篇文章主要介紹了SpringBoot導(dǎo)入mail依賴報(bào)錯(cuò)問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • IDEA讓包分層顯示的實(shí)現(xiàn)方式

    IDEA讓包分層顯示的實(shí)現(xiàn)方式

    這篇文章主要介紹了IDEA讓包分層顯示的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02

最新評論