猴子分蘋果
題目:
先來看一道題:
有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;
}
相關文章
- 猴子命令
- 猴子選大王-phpPHP
- 使用猴子測試工具
- 猴子吃桃問題
- JAVA 猴子分桃子問題Java
- 最新微信夾娃娃抓娃娃抓猴子游戲三級分銷原始碼小遊戲原始碼遊戲
- 猴子都能懂的GIT入門Git
- 王者榮耀猴子玩法上分攻略,S14孫悟空銘文出裝玩法解析!
- 寒假專案2-猴子選大王
- 演算法題(41-->50)題目:海灘上有一堆桃子,五隻猴子來分...演算法
- (C語言版)猴子吃桃問題C語言
- C語言演算法之猴子吃桃C語言演算法
- 第四周 專案4 猴子選大王
- “猴子選大王” 演算法 python實現演算法Python
- 黑猴子的家:python 函式是什麼?Python函式
- 馬斯克腦機介面最新突破:猴子用意念玩遊戲馬斯克腦機介面遊戲
- 黑猴子的家:Hive 資料倉儲位置配置Hive
- Python 中的鴨子型別和猴子補丁Python型別
- Python3 (基礎練習)猴子吃桃Python
- OC-測試:monkey For OC(iOS 猴子測試)iOS
- 蘋果葉部病害影像分類資料集蘋果
- 黑猴子的家:mysql 流程控制之分支結構MySql
- 黑猴子的家:Hadoop之Namenode多目錄配置Hadoop
- 黑猴子的家:window7+CentOS7雙系統CentOS
- 6只猴子引發的專案管理思考[轉帖]專案管理
- 蘋果APP內測分發渠道究竟有幾種?蘋果APP
- 猴子資料教你如何快速查詢域名備案是否存在
- 黑猴子的家:IDEA 使用 Git 進行專案管理IdeaGit專案管理
- 【簡易圖解】『 OAuth2.0』 猴子都能懂的圖解圖解OAuth
- 黑猴子的家:HBase 自定義HBase-MapReduce案列一
- 原生模擬遊戲不要餵食猴子Do Not Feed the Monkeys中文遊戲
- 一分鐘看完蘋果釋出會——精華彙總蘋果
- 高通驍龍835安兔兔跑分突破18萬分 終於超越蘋果A10蘋果
- 黑猴子的家:Windows 安裝 Navicat121 x64Windows
- [藍橋杯][演算法提高VIP]分蘋果 線段樹演算法蘋果
- 【廣州壞猴子科技】招聘初級c++/golang開發工程師C++Golang工程師
- 【廣州壞猴子科技】15-30K招聘golang開發工程師Golang工程師
- 黑猴子的家:Redis 之 You need tcl 8.5 or newer in order to run the Redis testRedis