摘要: 题面 "传送门" 分析 对于每一个数a[i],找到它后面第一个大于它的数a[p],由p向i连边,最终我们就会得到一个森林,且p是i的父亲。为了方便操作,我们再增加一个虚拟节点n+1,把森林变成树。 由于序列不是递增的,不能二分。维护一个单调栈,栈顶元素最小。从n到1依次对每个 数操作,弹出栈里比它小 阅读全文
posted @ 2019-03-09 13:13 birchtree 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 二分答案,考虑如何判定 可以用贪心的方法,每次找最快没电的电脑,在没电前1单位时间给它充电 正确性显然 实现上可以维护一个堆,存储每个电脑电用完的时刻,每次从堆顶取出最小的一个给它充电。设二分值为mid,对于每个电脑记录它的充电次数num[i],则没电的时间就是$\lfloo 阅读全文
posted @ 2019-03-09 12:39 birchtree 阅读(319) 评论(0) 推荐(0) 编辑