桂电第一次程序设计 C STL 排序
Problem 1197 # 共享厕所
ediszhao添加于2017-12-22 15:00:56
时间限制 : 1000MS 内存限制 : 65536KB
×提示 : 你已解决此题目。
问题描述
马路边有一个共享厕所,厕所里一共装有m 个马桶可供人们拉尿,每个人每秒钟的拉尿量相等,均为1。 现在有n 个人准备拉尿,他们的初始拉尿顺序已经确定。将这些人按拉尿顺序从1 到n编号,i 号同学的拉尿量为ai。拉尿开始时,1 到m 号人各占一个马桶,并同时开始拉尿。当其中某个人j 完成其拉尿量要求aj 后,下一名排队等候拉尿的人x马上接替j人的位置开始拉尿。这个换人的过程是瞬间完成的。即第j人第k秒结束时完成拉尿,则第x人第k+1 秒立刻开始拉尿。若当前拉尿人数n’不足m, 则只有n’个马桶供使用,其它m-n’个马桶关闭。 现在给出n 名人的拉尿量,按照上述拉尿规则,问所有人都拉完尿需要多少秒。
输入
第1 行是n 和m,分别表示拉尿人数和马桶个数。
第2 行n 个整数a1、a2、……、an,ai 表示i 号同 学的拉尿量。
输出
输出结果表示拉尿所需的总时间,结果只占一行。
输入范例
5 3
4 4 1 2 1
8 4
23 71 87 32 70 93 80 76
输出范例
4
163
//写这一题时,原考虑的选择先进先出的队列容器,按照题目模拟一下;
// 当时不会队列;
//思维的转变,先进先出,通过边输入边处理也能很好的解决;
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std ;
int main ()
{
int n,m,a[];
while(cin>>n>>m)
{
if(m>=n)
{
for(int i=; i<n; i++)
cin>>a[i];
sort(a,a+n);
cout<<a[n]<<endl;
} else
{
for(int i=; i<m; i++)
cin>>a[i];
sort(a,a+m);
for(int i=; i<n-m; i++)
{
int t; cin>>t;
a[]+=t;
sort(a,a+m);
}
cout<<a[m-]<<endl;
} }
return ;
}
桂电第一次程序设计 C STL 排序的更多相关文章
- 详细解说 STL 排序(Sort)
0 前言: STL,为什么你必须掌握 对于程序员来说,数据结构是必修的一门课.从查找到排序,从链表到二叉树,几乎所有的算法和原理都需要理解,理解不了也要死记硬背下来.幸运的是这些理论都已经比较成熟,算 ...
- 桂电在线-转变成bootstrap版3(记录学习bootstrap)
继续上文 正文菜单 html: <!-- 菜单块 --> <div class="on-light" id="menus"> <s ...
- 桂电在线-转变成bootstrap版2(记录学习bootstrap)
下载bootstrap框架https://github.com/twbs/bootstrap 或者 http://getbootstrap.com/ 拷贝模板 修改基本模板 语言zh-cn,标题,描述 ...
- 桂电在线-转变成bootstrap版
由于angularjs的不熟悉,而且SEO需要学习更多东西,于是先采用bootstrap版本,毕竟工作上也需要使用bootstrap,然后参照视频教程学习. bootstrap 基本模板 <!D ...
- 转:详细解说 STL 排序(Sort)
详细解说 STL 排序(Sort) 详细解说 STL 排序(Sort) 作者Winter 详细解说 STL 排序(Sort) 0 前言: STL,为什么你必须掌握 1 STL提供的Sort 算法 1. ...
- 详细解说 STL 排序(Sort)(转)
作者Winter 详细解说 STL 排序(Sort) 0 前言: STL,为什么你必须掌握 1 STL提供的Sort 算法 1.1 所有sort算法介绍 1.2 sort 中的比较函数 1.3 sor ...
- Ubuntu Linux 使用桂电校园网 上网
2016年9月1日 星期四 桂电校园网今天升级新的出校器,旧的出校器已经不能使用,所以本篇博客已经过期,下面的方法已经不能让Ubuntu使用桂电校园网上外网了.详细的原因,请到这个网站查看:校园网计费 ...
- C++ 泛型程序设计与STL模板库(1)---泛型程序设计简介及STL简介与结构
泛型程序设计的基本概念 编写不依赖于具体数据类型的程序 将算法从特定的数据结构中抽象出来,成为通用的 C++的模板为泛型程序设计奠定了关键的基础 术语:概念 用来界定具备一定功能的数据类型.例如: 将 ...
- STL 排序(转载)
这篇文章关于STL中的排序写的虽不深入,但是还是挺好的. 1.sort sort有两种形式,第一种形式有两个迭代器参数,构成一个前开后闭的区间,按照元素的 less 关系排序:第二种形式多加一个指定排 ...
随机推荐
- Redis Desktop Manager 利用ssh连接 Redis
需开启6379端口,如果不设置密码,就忽略1,2步骤 第一步: 第二步: 第三步: 第四步: 第五步:
- Centos 7系统虚拟机桥接模式 固定ip
前言 本文主要给大家介绍了关于Centos 7系统虚拟机桥接模式的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 主机ping不通虚拟机centos7系统的ip大多有以下原 ...
- 写给大忙人的Elasticsearch架构与概念(未完待续)
最新版本官方文档https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html文档增删改参考https://www ...
- How to Conduct High-Impact Research and Produce High-Quality Papers
How to Conduct High-Impact Research and Produce High-Quality Papers Contents From Slide Russell Grou ...
- k8s (kubernetes) 代码分析
简易入门 结构图: debug 先了解 etcd API源码分析 API server 是中心. https://www.jianshu.com/p/88c6ed78b668 $ git ls-fil ...
- Fedora 安装Docker
我使用的是yum安装, 下面提供我的yum源. name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/fedor ...
- Python3基础 list extend 合并列表
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- linux内核中的最简单的输入输出调度算法noop
1. noop是什么? noop是一种输入输出调度算法 2. noop的别称 又称为电梯调度算法 3. noop原理是怎样的? 将输入输出请求放到一个FIFO队列中,然后按次序执行队列中的输入输出请求 ...
- 【Runtime Error】打开Matlib7.0运行程序报错的解决办法
1.在C盘建立一个文件夹temp,存放临时文件: 2.右键我的电脑-属性-高级系统设置-环境变量-系统变量,将TEMP.TMP的值改成C:\temp: 3.还是在第2步那里,新建变量,变量名称为BLA ...
- 记录一下 ajax的基础传送
传数据 var json = $("#form").serializeObject(); $.ajax({ url: "/getUser", type: &qu ...