蕊蕊吃糖2870 C语言
题目描述
蕊蕊买了n罐糖,每罐糖中的数量不一,现在蕊蕊想吃掉至少m颗糖。蕊蕊想换着口味吃,因此蕊蕊将这些糖排成一排,一轮一轮吃。每一轮蕊蕊从每一罐中拿出一颗糖吃掉,若吃到某罐糖时这罐糖已经空了,那么蕊蕊就会跳过这罐糖。请问蕊蕊至少要吃多少轮才能吃够m颗糖?
- 输入
第一行输入两个整数n(0
由于输入数据很多,如果你使用了cin 或 cout ,请在main函数的第一行加上 std::ios::sync_with_stdio(false); 关闭同步加快数据读入。
- 输出
输出一个整数,表示蕊蕊至少要吃多少轮才能吃够m颗糖。
- 输入样例
10 16
2 7 4 5 4 4 1 3 3 10
- 输出样例
2
1e15显然需要long long了。每一次蕊蕊取糖的规则是唯一确定的,因此每一轮吃的也是固定的。
因此解实际上是固定边界的,二分查找这个最小的解即可,使用简陋的代码即可AC:
#include <iostream>
using namespace std;
int C[1000000];
int main()
{std::ios::sync_with_stdio(false);long long N, n = 0, i = 0, j = 0, m = 0, count = 0;long long f, max, min;long long M;cin >> N;cin >> M;max = M;while (n < N){cin >> C[n];n++;}min = M/N+1;f = (max + min) / 2;n = 0;while (n < N){if (C[n] >= f)count += f;elsecount += C[n];n++;}while (count > M || M - count > N){//二分查找最小边界解,这个解可能差一点不可行if (count < M)min = f + 1;elsemax = f - 1;f = (max + min) / 2;count = 0;n = 0;while (n < N){if (C[n] >= f)count += f;elsecount += C[n];n++;}}//如果二分的解还不可行,再多吃一轮while (count < M){f++;count = 0;n = 0;while (n < N){if (C[n] >= f)count += f;elsecount += C[n];n++;}}cout<<f;
}
蕊蕊吃糖2870 C语言相关推荐
- 【牛客 - 302哈尔滨理工大学软件与微电子学院第八届程序设计竞赛同步赛(低年级)】小乐乐吃糖豆 (fIb博弈)
题干: 小乐乐是一个比较喜欢吃糖豆的小孩子,小乐乐的哥哥大乐乐也同样爱吃糖豆. 作为一个小孩子,他们永远觉得谁吃掉了最后一个糖豆,谁吃的糖豆最多. 为了公平起见小乐乐与大乐乐商量吃糖豆的规则如下: 1 ...
- 拼多多2018校招—小熊吃糖
题目 有n只小熊,他们有着各不相同的战斗力.每次他们吃糖时,会按照战斗力来排,战斗力高的小熊拥有优先选择权.前面的小熊吃饱了,后面的小熊才能吃.每只小熊有一个饥饿值,每次进食的时候,小熊们会选择最大的 ...
- 2018拼多多校招笔试贪心编程题小熊吃糖详解
题目描述 有n只小熊,他们有着各不相同的战斗力.每次他们吃糖时,会按照战斗力来排,战斗力高的小熊拥有优先选择权.前面的小熊吃饱了,后面的小熊才能吃.每只小熊有一个饥饿值,每次进食的时候,小熊们会选择最 ...
- sincerit 小乐乐吃糖豆
链接:https://ac.nowcoder.com/acm/contest/302/G 来源:牛客网 小乐乐是一个比较喜欢吃糖豆的小孩子,小乐乐的哥哥大乐乐也同样爱吃糖豆. 作为一个小孩子,他们永远 ...
- 快快吃豆游戏c语言代码,C语言快快吃豆游戏.doc
C语言快快吃豆游戏 C语言--快快吃豆游戏 使用说明 运行程序时,首先进入到是游戏开始界面,根据提示,按键,决定是否进入游戏.运行效果如图7.1所示. 图7.1 进入游戏界面 按两下任意键,进入到快快 ...
- 保健食品“零食化”后,这届年轻人“吃糖”养生
最近,小艺迷上了吃糖.据她所述,她吃的不是普通的糖,而是含GABA成分.有利于助眠的糖. 笔者调研后发现,如小艺这样热衷于"吃糖"的年轻人已越来越多,且大多数人看中的是此类糖果带来 ...
- OSChina 周日乱弹 ——老公 老公 我想吃糖!晚上带你吃
2019独角兽企业重金招聘Python工程师标准>>> @刘松林 : 周末加班,欧耶. 加班的时候偷懒听听音乐吧. 手机党的少年,想听歌,使劲儿戳(这里) 图来自<鲸鱼马戏团& ...
- 得了近视要多补充维生素少吃糖
近视的形成与饮食有关系,多数近视患者的血钙偏低,维生素A缺乏:多数青少年近视患者的血清蛋白偏低,血钙和血色素也偏低.得了近视后,要多补充维生素A.B.族和钙.铬.锌等微量元素,少吃糖果和高糖食品.糖吃 ...
- 小鸡吃米java_小班语言活动小鸡吃米教案
小班语言活动小鸡吃米教案 作为一名默默奉献的教育工作者,时常需要用到教案,教案是备课向课堂教学转化的关节点.快来参考教案是怎么写的吧!以下是小编为大家收集的小班语言活动小鸡吃米教案,欢迎阅读,希望大家 ...
最新文章
- Cocos2d-x Touch事件处理机制
- 65. Leetcode 153. 寻找旋转排序数组中的最小值 (二分查找-局部有序)
- 医学论文论题该如何下手
- 将 Visual Studio 的代码片段导出到 VS Code
- 实时检索系统Zoie实现分析
- 自定义tt文本模板实现MySql指数据库中生成实体类
- CommonsChunkPlugin相关
- go兼容java_兼容dubbo的微服务框架dubbogo;dubbo的完整go语言实现
- Num37 spring 事务 ssh整合
- [洛谷1533] 可怜的狗狗
- Roberts算子边缘检测原理及实现
- 一文带你了解华为私有云
- 概念讲解:大地水准面 | 地球椭球体 | 参考椭球体 | 大地基准面 | 地图投影
- 104道精选iOS面试题PDF
- html模板怎样做seo,SEO如何做分享模板做外链
- 达摩院python教程视频_达摩院官方刚刚发布了最新的Python教程,整套427集系统学习视频...
- 七大黄金定律与产品设计
- 最速降线求解的数学模型
- java 主线程与子线程的执行顺序
- python中os模块用法