题解 1527: 蓝桥杯算法提高VIP-排队打水问题

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

比较好懂的贪心写法

先对每个人需要打水的时间进行排序,因为前面打水越快,后面需要等待的时间越短。然后从r+1个人开始,因为有m个水龙头前m个人已经开始打水。第i个人花费的时间是第i个人打水的时间+第i-r个人(打水的时间+等待的时间)因为有r个水龙头,所以轮到第i个人的时候第i-r个水龙头以及是空的,

蓝桥杯算法提高VIP-排队打水问题-题解(C++代码) 贪心

先把打水时间升序排序设水龙头个数为$$m$$创建一个有$$m$$个元素的小根堆,堆中存放的是要用某个水龙头要等待的时间首先把前$$m$$个人的打水时间放入堆里,并累加之后的$$n-m$$个人每次取出堆顶,累加上这个人的打水时间放回堆里```#include#include#includeusingna

排水打水问题dp方法

摘要:对于第i个打水的人来说,他所花的时间为上一个在该水龙头打水的人所需的时间+自己打水所需的时间#include <iostream>#include <bits/stdc++.h>using names……