猴子分蘋果
題目:
先來看一道題:
有5只猴子在海邊發現一堆桃子,決定第二天來平分.第二天清晨,第一隻猴子最早來到,它左分右分分不開,就朝海里扔了一隻,恰好可以分成5份,它拿上自己的一份走了.第2,3,4,5只猴子也遇到同樣的問題,採用了同樣的方法,都是扔掉一隻後,恰好可以分成5份.問這堆桃子至少有多少隻?
思路:
先給這些猴子4個桃子,
第1只猴子多了4個桃子正好分成五份,拿走自己的部分(一堆多1個,給他的4個桃子留給第二個猴子);
第2只猴子多了4個桃子正好分成五份,拿走自己的部分(一堆多1個,給他的4個桃子留給第三個猴子);
…………………
第5只猴子多了4個桃子正好分成五份,拿走自己的部分;
這就是說,有了這4個桃子,每次猴子都可以平均分成5份,可見,原來的總數必須是5的5次方的倍數,即3125,所以原來有3121個。
先給四個的目的是湊整,這樣就當做扔掉的也被第一個拿走了,這樣每次都可以除盡。5只猴子需要除盡五次,所以需要5^5次方。那麼可列式x+4=5^5解決。
在這裡,每隻猴子都取剩下的m個蘋果和平分的那些,不妨令每隻猴子拿走了這樣,這樣的話先新增(n-1)*m個蘋果,這樣雖然第一隻猴子拿掉了m+x/n個蘋果,但是預先給的沒有拿走,對於第二隻猴子仍然滿足平分,n只猴子平分完還可以再平分,也就是n^(n+1),所以可列式x+(n-1)*m=n^(n+1);
程式碼:
#include<algorithm>
#include<iostream>
#include<cstring>
#include<string>
#include<cstdlib>
#include<map>
#include<cmath>
#include<vector>
using namespace std;
typedef long long ll;
const int maxn = 1e6+50;
int main(){
ll n,m;
cin >> n >> m;
ll ans = pow(n,n+1)-(n-1)*m;
cout << ans << endl;
return 0;
}
相關文章
- 猴子分香蕉
- 蘋果推出“蘋果邊緣快取”(蘋果企業簽名)蘋果快取
- 九度oj 題目1416:猴子吃堅果
- 蘋果葉部病害影像分類資料集蘋果
- 蘋果APP內測分發渠道究竟有幾種?蘋果APP
- 蘋果企業簽名—不掏錢?蘋果廢?蘋果
- 蘋果訊號有救了?(蘋果企業簽名)蘋果
- 蘋果:2018年蘋果環境責任報告蘋果
- notability蘋果版蘋果
- 蘋果iPhone XS分屏使用教程 蘋果iPhone怎麼分屏?蘋果iPhone
- 蘋果手機怎麼建立AppleID帳號?蘋果iPhone XS/XS Max建立蘋果帳號教程蘋果APPiPhone
- [藍橋杯][演算法提高VIP]分蘋果 線段樹演算法蘋果
- 題目 1501: [藍橋杯][演算法提高VIP]分蘋果演算法蘋果
- 蘋果新MacBook Air評測,蘋果新MacBook Air好用嗎?蘋果MacAI
- 蘋果企業簽名—蘋果推出5000美元新品搞事情?蘋果
- 蘋果簽名價格—2021蘋果要側面指紋?蘋果
- 蘋果再遭銷量危機(蘋果企業賬號)蘋果
- 蘋果簽名推薦,如何選擇蘋果簽名者蘋果
- 蘋果:2020年上半年蘋果透明度報告蘋果
- 猴子命令
- 蘋果手機尺寸蘋果
- 蘋果磁碟工具教程蘋果
- 蘋果ios簽名蘋果iOS
- 黑蘋果 macos 教程蘋果Mac
- 蘋果iPad Pro 2018安兔兔跑分效能測試 新iPad Pro跑分多少?蘋果iPad
- 蘋果瘋狂挖角特斯拉 特斯拉回應:蘋果比我們錢多蘋果
- 蘋果無損畫素拍照黑科技(蘋果企業簽名)蘋果
- 最新蘋果資訊:蘋果手錶6健康功能顯著提升蘋果
- 蘋果手機現在入手優惠大(蘋果企業簽名)蘋果
- ios蘋果企業簽名:蘋果申請智慧指環專利iOS蘋果
- 蘋果新品預測,2021年蘋果最有可能推出的5款新品蘋果
- 過包率提升10% 一分鐘瞭解蘋果稽核機制蘋果
- 黑蘋果組裝指南蘋果
- iOS 推送(蘋果原生態)iOS蘋果
- 蘋果FoundationDB事務宣言蘋果
- 黑蘋果使用系列【一】蘋果
- 蘋果推新AI:ReALM蘋果AI
- Hackintosh (黑蘋果) 折騰蘋果