C++分糖果-真题红太阳幼儿园有n个小朋友,你是其中之一。保证n≥2。有一天你在幼儿园的后花园里发现无穷多颗糖果,你打算拿一些糖果回去分给幼儿园的小朋友们。由于你只是个平平无奇的幼儿园小朋友,
紅太陽幼兒園有n個(gè)小朋友,你是其中之一。保證n≥2。
有一天你在幼兒園的后花園里發(fā)現(xiàn)無窮多顆糖果,你打算拿一些糖果回去分給幼兒園的小朋友們。
由于你只是個(gè)平平無奇的幼兒園小朋友,所以你的體力有限,至多只能拿R塊糖回去。
但是拿的太少不夠分的,所以你至少要拿L塊糖回去。保證n≤L≤R。
也就是說,如果你拿了k塊糖,那么你需要保證L≤k≤R。
如果你拿了k塊糖,你將把這k塊糖放到籃子里,并要求大家按照如下方案分糖果:只要籃子里有不少于n塊糖果,幼兒園的所有n個(gè)小朋友(包括你自己)都從籃子中拿走恰好一塊糖,直到籃子里的糖數(shù)量少于n塊。此時(shí)籃子里剩余的糖果均歸你所有——這些糖果是作為你搬糖果的獎(jiǎng)勵(lì)。
作為幼兒園高質(zhì)量小朋友,你希望讓作為你搬糖果的獎(jiǎng)勵(lì)的糖果數(shù)量(而不是你最后獲得的總糖果數(shù)量!)盡可能多;因此你需要寫一個(gè)程序,依次輸入n,L,R,并輸出出你最多能獲得多少作為你搬糖果的獎(jiǎng)勵(lì)的糖果數(shù)量。對于所有數(shù)據(jù),保證2≤n≤L≤R≤1000000000。
#include<iostream>
#include<cstring>
using namespace std;
? ? int main(){
? ? ?? ?int n,L,R,k; ?//定義整數(shù)型變量n、L、R、k?
? ? ? ? cin>>n>>L>>R; //輸入n,L,R?
? ? ? ? k=L/n; ? ? ? ?//定義k=L/n?
? ? ? ? R-=n*k; ? ? ? //R-=n乘以k?
? ? ? ? R=min(R,n-1); //取R區(qū)間的最小值?
? ? ? ? cout<<R<<endl;//輸出R?
?? ??? ?return 0;
?? ?}?
總結(jié)
以上是生活随笔為你收集整理的C++分糖果-真题红太阳幼儿园有n个小朋友,你是其中之一。保证n≥2。有一天你在幼儿园的后花园里发现无穷多颗糖果,你打算拿一些糖果回去分给幼儿园的小朋友们。由于你只是个平平无奇的幼儿园小朋友,的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于单片机火灾监测报警系统设计-毕设资料
- 下一篇: c++获取mac操作系统的版本号