【CodeForces - 1042A】Benches (优先队列,思维模拟,maxmin问题)

题干:

There are nn benches in the Berland Central park. It is known that aiai people are currently sitting on the ii-th bench. Another mm people are coming to the park and each of them is going to have a seat on some bench out of nn available.

Let kk be the maximum number of people sitting on one bench after additional mmpeople came to the park. Calculate the minimum possible kk and the maximum possible kk.

Nobody leaves the taken seat during the whole process.

Input

The first line contains a single integer nn (1≤n≤100)(1≤n≤100) — the number of benches in the park.

The second line contains a single integer mm (1≤m≤10000)(1≤m≤10000) — the number of people additionally coming to the park.

Each of the next nn lines contains a single integer aiai (1≤ai≤100)(1≤ai≤100) — the initial number of people on the ii-th bench.

Output

Print the minimum possible kk and the maximum possible kk, where kk is the maximum number of people sitting on one bench after additional mm people came to the park.

Examples

Input

4
6
1
1
1
1

Output

3 7

Input

1
10
5

Output

15 15

Input

3
6
1
6
5

Output

6 12

Input

3
7
1
6
5

Output

7 13

Note

In the first example, each of four benches is occupied by a single person. The minimum kk is 33. For example, it is possible to achieve if two newcomers occupy the first bench, one occupies the second bench, one occupies the third bench, and two remaining — the fourth bench. The maximum kk is 77. That requires all six new people to occupy the same bench.

The second example has its minimum kk equal to 1515 and maximum kk equal to 1515, as there is just a single bench in the park and all 1010 people will occupy it.

解题报告:

   maxx很好弄,全加在那个最大的上就可以了。(也就是最大可能的最大值)

  主要是minn:(最小可能的最大值)

    这题做法很多,可以直接优先队列模拟,这种题见过很多个了。

    还有一个方法,因为要输出最小的最大值,所以直接看看能不能把其余的都变成最大的,然后剩下的再均摊。如果不够都变成最大的,那最大的那个就是答案。

    刚开始有一个错误的想法,就是上来就平均分,然后剩余的多的再加到最小的身上。这样错误想法的产生,就是因为没有注意到答案的特点:肯定要大于等于那个最大的。

AC代码:

#include<bits/stdc++.h>using namespace std;
int n,m;
int a[1000 + 5];
priority_queue<int,vector<int>,greater<int> > pq;
int main()
{cin>>n>>m;for(int i = 1; i<=n; i++) scanf("%d",a+i),pq.push(a[i]);sort(a+1,a+n+1);int maxx = a[n] + m;int minn = 0;for(int i = 1 ; i<=m; i++) {int cur = pq.top();pq.pop();pq.push(cur+1);}for(int i = 1; i<=n; i++) {minn = max(minn,pq.top());pq.pop();}printf("%d %d\n",minn,maxx);return 0;
}

当时的错误想法:

//	for(int i = 1; i<=n; i++) a[i]+=(m/n);
//	m%=n;
//	for(int i = 1; i<=m; i++) a[i]++;
//	minn = *max_element(a+1,a+n+1);

总结:先分析清楚问题,再动手敲代码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/441577.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网页html 图片横向摆放,css实现多张图片横向居中显示的方法

先讲一下实现的步骤&#xff1a;最终效果2. 代码实现HTML部分分类小贴士CSS部分.main{width:100%;margin-top:40px;}.main .tag{margin:0 auto;width:200px;font-size:18px;border-bottom:1px solid #878787;text-align:center;margin-bottom:20px;}.main .images{margin:0 aut…

【CodeForces - 1042B】Vitamins(去重方法,二进制或stlmap,水题)

题干&#xff1a; Berland shop sells nn kinds of juices. Each juice has its price cici. Each juice includes some set of vitamins in it. There are three types of vitamins: vitamin "A", vitamin "B" and vitamin "C". Each juice ca…

android 中断处理流程,Android P的native crash处理流程

一、概述Android系统有监控程序异常退出的机制&#xff0c;这便是本文要讲述得debuggerd守护进程。当发生native crash或者主动调用debuggerd时&#xff0c;会输出进程相关的状态信息到文件或者控制台。输出的debuggerd数据 保存在文件/data/tombstones/tombstone_XX&#xff0…

数论中的无数公式 总结

斯特林公式是一条用来取n阶乘近似值的数学公式。一般来说&#xff0c;当n很大的时候&#xff0c;n阶乘的计算量十分大&#xff0c;所以斯特灵公式十分好用&#xff0c;而且&#xff0c;即使在 n很小的时候&#xff0c;斯特灵公式的取值已经十分准确。 公式为&#xff1a; 以下…

计算机怎样连接网络适配器,win10 本地连接共享internet时, 会将承载网络适配器IP设置成192.168.137.1但不成功...

您好&#xff0c;谢谢您&#xff01;我后来参考了http://www.ishanarora.com/2009/07/29/windows-7-as-a-wireless-access-point/ 中的 Jenny提到的方案COMPLETE SOLUTION:### create virtual vwlan hosted port, set AP ssid to advertise, and its password- [cmd] netsh wla…

【POJ - 1001 】Exponentiation (Java大数,高精度)

题干&#xff1a; Problems involving the computation of exact values of very large magnitude and precision are common. For example, the computation of the national debt is a taxing experience for many computer systems. This problem requires that you write…

用计算机唱出惊雷,除了《惊雷》还有多少喊麦神曲?这十首神作你一定听过!...

一首《惊雷》可以说是火遍了大江南北&#xff0c;一时间风头无二。而这两天杨坤对《惊雷》的diss、惊雷原唱六道的回应更是成为全网热搜&#xff0c;这也让以《惊雷》为首的“喊麦文化”再次进入了公众的视线。事实上除了《惊雷》&#xff0c;还有不少脍炙人口的喊麦神曲&#…

ACM算法 -- 数论 -- 开灯关灯问题(数论,整数分解,因子个数,公式推导)

有编号1~100个灯泡&#xff0c;起初所有的灯都是灭的。有100个同学来按灯泡开关&#xff0c;如果灯是亮的&#xff0c;那么按过开关之后&#xff0c;灯会灭掉。如果灯是灭的&#xff0c;按过开关之后灯会亮。 现在开始按开关。 第1个同学&#xff0c;把所有的灯泡开关都按一次…

计算机编程是考研什么专业,程序员考研该不该继续选择计算机专业

首先&#xff0c;近些年来确实有不少程序员会选择通过读研来突破自身的岗位发展瓶颈&#xff0c;大部分程序员在读研后也都获得了岗位升级&#xff0c;还有一部分程序员会继续读博&#xff0c;从而进入到科研和教育领域发展。从当前的技术发展趋势和人才需求趋势来看&#xff0…

【牛客 - 185D】星光晚餐(数论,结论,思维,模型)

题干&#xff1a; Johnson和Nancy要在星光下吃晚餐。这是一件很浪漫的事情。 为了增加星光晚餐那浪漫的氛围&#xff0c;他拿出了一个神奇的魔法棒&#xff0c;并且可以按照一定的规则&#xff0c;改变天上星星的亮暗。 Johnson想考考Nancy&#xff0c;在他挥动魔法棒后&#x…

vue 模板 html 表达式,Vue 模板template、指令directive、修饰符

模板 templatetemplate的三种写法写法一&#xff1a;Vue完整版&#xff0c;写在HTML里//html{{n}}1//vuenew Vue({el: #xxx,data(){return{n:0}},methods:{add(){}}})复制代码写法二&#xff1a;Vue完整版&#xff0c;写在选项里//html//vuenew Vue({template: {{n}}1,data(){r…

黄冈学计算机的学校怎么样,广元市黄冈学校怎么样、好不好

问&#xff1a;广元市黄冈学校怎么样、好不好?答&#xff1a;办学四年多来&#xff0c;学校在上级主管部门考核中一直名列前茅&#xff0c;得到广大学生家长的认可&#xff0c;多次受到上级表彰&#xff0c;被评为“民办教育先进集体”&#xff0c;学校环境优美&#xff0c;是…

【 HDU - 1215 】七夕节(数论,约数和公式)

题干&#xff1a; 七夕节那天,月老来到数字王国,他在城门上贴了一张告示,并且和数字王国的人们说:"你们想知道你们的另一半是谁吗?那就按照告示上的方法去找吧!" 人们纷纷来到告示前,都想知道谁才是自己的另一半.告示如下: 数字N的因子就是所有比N小又能被N整除的…

计算机专业小三门要求,最新小三门选科要求有啥变化?附对比表

原标题&#xff1a;最新小三门选科要求有啥变化&#xff1f;附对比表刚刚&#xff0c;上海市教育考试院公布了2020年拟在沪招生普通高校、军队院校本科专业选考科目要求&#xff0c;让我们今年的选科范围有哪些变化&#xff1f;说明&#xff1a;1 选考范围为不限&#xff0c;说…

【51Nod - 1215 】数组的宽度 (单调栈 或 分治 或 单调队列,算贡献,需去重)

题干&#xff1a; N个整数组成的数组&#xff0c;定义子数组aii..ajj的宽度为&#xff1a;max(ai..aj) - min(ai..aj)&#xff0c;求所有子数组的宽度和。 Input 第1行&#xff1a;1个数N&#xff0c;表示数组的长度。(1 < N < 50000) 第2 - N 1行&#xff1a;每行1…

云昆明理工大学 计算机复试,2012年昆明理工大学计算机考研复试试题(回忆版)...

2012年昆明理工大学计算机考研复试试题(年昆明理工大学计算机考研复试试题(回忆版)回忆版)本试题由http://doc.xuehai.net网友kenden23提供笔试C(总共30分)一、40题选择题(20分)1.派生类调用构造函数时&#xff0c;基类的构造函数先调用&#xff1b;2. int a1,b1,c1,d1,e1;if((…

*【CodeForces - 122C 】Lucky Sum (bfs记录状态,二分查找,有坑)(或分块)

题干&#xff1a; Petya loves lucky numbers. Everybody knows that lucky numbers are positive integers whose decimal representation contains only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not. Let next(x) be the…

模拟量使用计算机电缆,DJYPVRP计算机电缆型号规格

计算机电缆用途&#xff1a;本产品适用于额定电压30/500v及以下防干扰性能要求较高的电子计算机、检测仪器、仪表的连接。使用条件&#xff1a; 计算机电缆(电压等级&#xff1a;0.45/0.75KV&#xff0c;企标)本产品使用于交流额定电压为300/500及以下&#xff0c;对于防干扰性…

【CodeForces - 155C】Hometask (字符串,思维,贪心,熟悉句式)(总结)

题干&#xff1a; Sergey attends lessons of the N-ish language. Each lesson he receives a hometask. This time the task is to translate some sentence to the N-ish language. Sentences of the N-ish language can be represented as strings consisting of lowercas…

html 报表插件,轻量级图形报表插件JSCharts

插件描述&#xff1a;JScharts是一个用于在浏览器直接绘制图表的JavaScript工具包。JScharts支持柱状图、圆饼图以及线性图&#xff0c;可以直接将这个图插入网页&#xff0c;JScharts图的数据可以来源于XML文件、JSON文件或JavaScript数组变量。2017-05-09更新&#xff1a;改为…