【题解】「SP34013」SEUG - Seetha’s Unique Game
这道题一看就是 贪心 。
使放的石头少,就需要石头大。
那么就可以将石头重量排序,从大到小。
这道题里面看似东西很多,但是很多东西都是没有用的。比如说:箱子的长和宽,因为题目中说「每加一个石头,水的高度就会增加那个石头的重量那么多。」,根本没有用到长和宽,只需要高度。
其次,添加的石头的总重量要 大于 (不是大于等于)长方体剩下的高度。所以只需要循环每次添加最重的石头,当:剩下的高度大于石头总重量时,停止循环,输出石头数量。
详细的,看代码:
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#define line cout << endl
using namespace std;
int t;
bool cmp(int x, int y) {
return x > y;
}
int main() {
cin >> t;
for (int T = 1; T <= t; T++) {//T组数据
int a, b, c, d;//分别表示:箱子的长宽高和箱子里有多高的水
cin >> a >> b >> c >> d;
int n;
cin >> n;
int w[n + 5];
for (int i = 1; i <= n; i++) {
cin >> w[i];
}
sort(w + 1, w + n + 1, cmp);//把石头的重量从大到小排序
int ans = 0, cnt = 0;//分别表示:用了的石头的数量,和
while (c - d >= cnt) {//当剩下的高度还小于等于石头的总重量时,进入循环
ans++;//用了的石头的数量加一
cnt += w[ans];//其实这里的ans就是代表用到了第几块石头,不用再建变量,浪费空间(其实是懒得再建变量了(((
}
cout << ans;//输出答案
line;//换行!!!
//换行!!!
//换行!!!
//重要的事情说三遍(
}
return 0;
}
不要抄哦\QAQ,最重要的是自己理解,自己思考。\QAQ
【题解】「SP34013」SEUG - Seetha’s Unique Game的更多相关文章
- 题解 「HDU6403」卡片游戏
link Description 桌面上摊开着一些卡牌,这是她平时很爱玩的一个游戏.如今卡牌还在,她却不在我身边.不知不觉,我翻开了卡牌,回忆起了当时一起玩卡牌的那段时间. 每张卡牌的正面与反面都各有 ...
- 题解 「SCOI2016」萌萌哒
link Description 一个长度为 $ n $ 的大数,用 $ S_1S_2S_3 \ldots S_n $表示,其中 $ S_i $ 表示数的第 $ i $ 位,$ S_1 $ 是数的最高 ...
- 题解 「SDOI2017」硬币游戏
题目传送门 Description 周末同学们非常无聊,有人提议,咱们扔硬币玩吧,谁扔的硬币正面次数多谁胜利. 大家纷纷觉得这个游戏非常符合同学们的特色,但只是扔硬币实在是太单调了. 同学们觉得要加强 ...
- 题解 「ZJOI2018」历史
题目传送门 Description 九条可怜是一个热爱阅读的女孩子. 这段时间,她看了一本非常有趣的小说,这本小说的架空世界引起了她的兴趣. 这个世界有 \(n\) 个城市,这 \(n\) 个城市被恰 ...
- 题解 「BZOJ3636」教义问答手册
题目传送门 Description 作为泉岭精神的缔造者.信奉者.捍卫者.传承者,Pear决定印制一些教义问答手册,以满足泉岭精神日益增多的信徒.Pear收集了一些有关的诗选.语录,其中部分内容摘录在 ...
- 题解「BZOJ4310」跳蚤
题目传送门 Description 现在有一个长度为 \(n\) 的字符串,将其划分为 \(k\) 段,使得这 \(k\) 段每一段的字典序最大子串中字典序最大的字符串字典序尽量小.求出这个字符串. ...
- 题解 「BZOJ2137」submultiple
题目传送门 题目大意 给出 \(M,k\) ,求出 \[\sum_{x|M}\sigma(x)^k \] 给出 \(P_i\),满足 \(n=\prod_{i=1}^{n}a_i^{P_i}\),其中 ...
- 题解 「BZOJ2178」圆的面积并
题目传送门 题目大意 给出 \(n\) 个圆,求它们并的面积大小. \(n\le 10^3\) 思路 如果您不会自适应辛普森法,请戳这里学习 其实我们发现,如果我们设 \(f(x)\) 表示 \(x= ...
- 题解 - 「MLOI」小兔叽
小兔叽 \(\texttt{Link}\) 简单题意 有 \(n\) 个小木桩排成一行,第 \(i\) 个小木桩的高度为 \(h_i\),分数为 \(c_i\). 如果一只小兔叽在第 \(i\) 个小 ...
随机推荐
- 基于 Nebula Operator 的 K8s 自动化部署运维
摘要:Nebula Operator 是 Nebula Graph 在 Kubernetes 系统上的自动化部署运维插件.在本文,你将了解到 Nebula Operator 的特性及它的工作原理. 从 ...
- 让mac电脑更简单运行Windows软件的CrossOver,优势知多少?
如今,一些iPhone和iPad机型拥有Face ID功能,此功能作用允许用户通过面部识别来解锁设备.该功能还不能在Mac上使用,但是国外媒体于7月27日报道称,在公测第三版的macOS Big Su ...
- 对KVC和KVO的理解
html { overflow-x: initial !important } :root { --bg-color: #ffffff; --text-color: #333333; --select ...
- Apiview+serallizers
1.APIVIEW使用 https://www.cnblogs.com/xiaonq/p/10124104.html ModelVIewSet是对APIView封装 ModelSerializer是对 ...
- 【AcWing 113】【交互】特殊排序——二分
(题面来自AcWing) 有N个元素,编号1.2..N,每一对元素之间的大小关系是确定的,关系不具有传递性. 也就是说,元素的大小关系是N个点与N*(N-1)/2条有向边构成的任意有向图. 然而,这是 ...
- 编程语言输出“ Hello World ”,你真的都会了吗?
Hello World 中文意思是『你好,世界』.因为<The C Programming Language>中使用它做为第一个演示程序,非常著名,所以后来的程序员在学习编程或进行设备调试 ...
- 【mq读书笔记】mq消息发送
钩子的注册: DefaultMQProducerImpl#registerSendMessageHook注册钩子处理类,可注册多个. public SendResult sendMessage( fi ...
- 【mq读书笔记】客户端处理消息(回调提交到异步业务线程池,pullRequest重新入队)
看一下客户端收到消息后的处理: MQClientAPIImpl#processPullResponse private PullResult processPullResponse( final Re ...
- 怎么用fio测试存储性能
1 /// -rw=read(100%顺序读) -rw=write(100%顺序写) -rw=randread(100%随机读) -rw=randwrite(100%随机写), 2 ///-rw=rw ...
- Spring Boot 2.x 多数据源配置之 JPA 篇
场景假设:现有电商业务,商品和库存分别放在不同的库 配置数据库连接 app: datasource: first: driver-class-name: com.mysql.cj.jdbc.Drive ...