サルの桃盗み問題
697 ワード
タイトル
サルが山の桃の木の下に来て、桃の山を見つけた.初日に1つ食べて、半分持って行って、家に帰って、2番目のサルにニュースを伝えました.次の日、二番目のサルも来て、また一つ食べて、半分持って行って、家に帰って、三番目のサルに伝えました.3番目のサルも1つ食べて、半分持って行きました.このように、10日目、10番目のサルが来たとき、桃が1つ残っていることがわかりました.初日に全部で何個の桃がありますか?
ぶんせき
式を導出します.
コアコードは次のとおりです.
サルが山の桃の木の下に来て、桃の山を見つけた.初日に1つ食べて、半分持って行って、家に帰って、2番目のサルにニュースを伝えました.次の日、二番目のサルも来て、また一つ食べて、半分持って行って、家に帰って、三番目のサルに伝えました.3番目のサルも1つ食べて、半分持って行きました.このように、10日目、10番目のサルが来たとき、桃が1つ残っていることがわかりました.初日に全部で何個の桃がありますか?
ぶんせき
,n1,n2,n3,n4,n5......n10 n
1 : 2*n2+1
2 : 2*n3+1
3 : 2*n4+1
4 : 2*n5+1
5 : 2*n6+1
6 : 2*n7+1
7 : 2*n8+1
8 : 2*n9+1
9 : 2*n10+1
10 : 1
式を導出します.
f(10) = 1
f(n) = 2 * f(n+1) + 1,n [1, 10)
コアコードは次のとおりです.
public static int stealPeach(int n){
if (n == 10) {
return 1;
} else {
return 2 * stealPeach(n+1) + 1;
}
}