日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

猴子分桃

發(fā)布時間:2023/12/13 综合教程 24 生活家
生活随笔 收集整理的這篇文章主要介紹了 猴子分桃 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

猴子分桃

Description
老猴子辛苦了一輩子,給那群小猴子們留下了一筆巨大的財富——一大堆桃子。老猴子決定把這些桃子分給小猴子。

第一個猴子來了,它把桃子分成五堆,五堆一樣多。但還多出一個。

它把剩下的一個留給老猴子,自己拿走當(dāng)中的一堆。

第一個猴子來了,它把桃子分成五堆。五堆一樣多。但又多出一個。

它把多出的一個留給老猴子,自己拿走當(dāng)中的一堆。

后來的小猴子都如此照辦。最后剩下的桃子所有留給老猴子。

這里有n僅僅小猴子,請你寫個程序計算一下在開始時至少有多少個桃子,以及最后老猴子最少能得到幾個桃子。

Input
輸入包含多組測試數(shù)據(jù)。
每組測試數(shù)據(jù)包含一個整數(shù)n(1≤n≤20)。
輸入以0結(jié)束,該行不做處理。

Output
每組測試數(shù)據(jù)相應(yīng)一行輸出。
包含兩個整數(shù)a,b。
分別代表開始時最小須要的桃子數(shù),和結(jié)束后老猴子最少能得到的桃子數(shù)。

Sample Input

Original Transformed
5
1
0

Sample Output

Original Transformed
3121 1025
1 1
#include<stdio.h>
int main()
{
    int n;
    while (scanf("%d", &n),n) //輸入一個數(shù),假設(shè)n!=0就循環(huán); 
    {
        int i;
        long long zong=1;
        for (i=1; i<=n; i++)    //桃子數(shù)為zong-4;
            zong*=5;
        long long hou=zong;
        for (i=1; i<=n; i++)    //老猴子得到的桃子數(shù)為hou+n-4;
            hou=hou/5*4;
        printf("%lld %lld
", zong-4, hou+n-4);
    }
    return 0;
}

解說:首先令老猴一共同擁有X個桃,第一個猴拿后,還剩 4/5X-4/5;第二個拿后。還剩16/25X-16/25-4/5;多列幾個??傻玫趎個猴拿后還剩4^n/5^nX-(4^n/5^n+···+4/5);整理可得m=(4/5)^n(X+4)-4;由于在每一個4/5過程中都要能整除。所以X最小滿足5^n-4 ;老猴可得桃數(shù)是m+n;

總結(jié)

以上是生活随笔為你收集整理的猴子分桃的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。