书架bookshelf
第一题 书架
【问题描述】
为了方便同学们查阅资料,程序设计兴趣小组的辅导老师打算将积攒了很多年的n本书放到上课教室的书架上去。
教室的书架是一层一层叠起来的,每一层最多可以放m本书。每一层的高度由放在这层中最高的那本书决定的,如果不放书,则认为这层的高度为0。为了使每个同学能方便地拿到想要的书,书架的总高度应尽可能低。请编程计算将这n本书放在书架上后书架的最小总高度,计算的过程中不考虑书的厚度与书架本身材料的厚度。
【输入数据】
输入文件bookshelf.in:输入从文件中读取,输入共n+1行。
第1行2个整数n和m (1≤m≤n≤100000) 。
接下来n行,每行1个正整数,分别表示每本书的高度(每本书的高度不超过100)。
【输出数据】
输出文件bookshelf.out:结果输出到文件中,输出共1行,表示将n本书放入书架后书架的最小总高度。
【输入输出样例】
bookshelf.in bookshelf.out
3 2 40
20
10
30
【样例解释】
将高度是30和20的两本书放在一层,则这层的高度为30,将高度是10的那本书放在另外一层,则这层的高度为10,则书架的总高度为40,满足最小。
【数据范围约定】
每本书的高度为不超过100的正整数。
对于70%的数据,1≤m≤n≤1000。
对于100%的数据,1≤m≤n≤100000。
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
bool cmp(int x,int y) {
return x>y;
} //排序时关键字段比较依据 ,降序排序
int x,t,max1,n,m,s,i,a[1000001];
int main(){
freopen(“bookshelf.in”,“r”,stdin);
freopen(“bookshelf.out”,“w”,stdout);
cin>>n>>m;
for(i=1;i<=n;i++) scanf("%d",&a[i]);
sort(a+1,a+n+1,cmp); //排序
for(i=1;i<=n;i++)
if(i%m==1) s=s+a[i];
cout<<s;
return 0;
}
书架bookshelf相关推荐
- 书架 bookshelf
书架 bookshelf 书架 bookshelf 题目描述 当Farmer John闲下来的时候,他喜欢坐下来读一本好书. 多年来,他已经收集了N本书 (1 <= N <= 100,00 ...
- [USACO12OPEN]书架Bookshelf
Description 当农夫约翰闲的没事干的时候,他喜欢坐下来看书.多年过去,他已经收集了 N 本书 (1 <= N <= 100,000), 他想造一个新的书架来装所有书. 每本书 i ...
- [慈溪2012]书架(bookshelf)
题目描述 为了方便同学们查阅资料,程序设计兴趣小组的辅导老师打算将积攒了很多年的n本书放到上课教室的书架上去. 教室的书架是一层一层叠起来的,每一层最多可以放m本书.每一层的高度由放在这层中最高的那本 ...
- 洛谷P1848 [USACO12OPEN]书架Bookshelf
当农夫约翰闲的没事干的时候,他喜欢坐下来看书.多年过去,他已经收集了 N 本书 (1 <= N <= 100,000), 他想造一个新的书架来装所有书. 每本书 i 都有宽度 W(i) 和 ...
- python3爬小说_python3小说爬虫
作为一个很喜欢看书的人,有时候在网页上看小说,会被数不胜数的广告弄的很烦,刚好最近在研究python,就自己写了一个小说爬虫,并用pyqt做了图形界面. 下面介绍一下主要思路,不过就不开源了,因为我的 ...
- 每日学一个设计模式1——迭代器模式
引言 精通设计模式是从码农脱颖而出的条件之一.跟着<图解设计模式>这本书学习设计模式,从今天开始,一天总结一个设计模式. 迭代器模式(一个一个遍历) 用处 隐藏遍历集合的内部结构,遍历不同 ...
- 我的世界常用命令和物品名称
显示玩家坐标: /gamerule showcoordinates true 是显示玩家坐标的指令 区域填充: /fill 坐标 坐标 物品 物品大全: https://minecraft.52pk. ...
- python爬虫小说系统_python3小说爬虫
作为一个很喜欢看书的人,有时候在网页上看小说,会被数不胜数的广告弄的很烦,刚好最近在研究python,就自己写了一个小说爬虫,并用pyqt做了图形界面. 下面介绍一下主要思路,不过就不开源了,因为我的 ...
- POJ 3628 Bookshelf 2
POJ 3628 Bookshelf 2:http://poj.org/problem?id=3628 题意:有个书架,高度为B,现在FJ有N个奶牛,每个奶牛有个高度hi,现在将奶牛堆起来,使得堆起来 ...
最新文章
- myeclipse 遇到的一些问题及解决方案
- 安装QCreator2.5+Qt4.8.2+MinGW_gcc_4.4
- web应用程序和web网站_Web应用程序和移动应用程序的基本启动清单
- Android BLE 低功耗蓝牙技术使用解析
- 多行显示的UIButton
- 链表的建立,搜索,插入,反转,销毁以及合并有序链表。
- Yoda 表示法错在哪里
- selenium的简单介绍
- 前端解读面向切面编程(AOP)
- 山东工业大学计算机及应用,彭玉旭副教授
- WeChatTweak-微信小助手安装教程
- TakeColor 屏幕取色器 8.0 中文绿色版
- php微信页面缓存数据,微信页面入口文件被缓存解决方案
- [Windows] PPT插件集,部分支持WPS(提高你的制作效率和页面美观)
- 手机短信小额支付接口.Net实现
- 巴巴运动网学习笔记(76-80)
- 融资2500万美元,#Spatial从协作办公进化到元宇宙产品,#NFT创作生态
- 超简单的vim配置高亮
- 两个和尚的故事【摘】
- java线程状态——java线程状态图
热门文章
- 京东双11热爱环游记,使用AUTO.JS脚本自动领汪汪币(2021.10.29最新)
- 用python函数画德国国旗代码_每日一程-11.利用Python turtle库绘制国旗
- Apple Pay 在线远程支付
- 匹兹堡计算机科学公司,UPitt的Computer Science「匹兹堡大学计算机科学系」
- google pinyin下如何输入英文
- SQL注入入侵动网SQL
- Python学习笔记:第十三站 接着找对象
- 《痛点:挖掘小数据满足用户需求》
- idea + groovy + mybatis 自动生成 Dao、mappings 和 实体类
- [网络安全技术文章之其一] 给数据科学家的十条数据安全建议