关注
洛谷题目页面传送门 & UVA12100 Printer Queue 题目页面传送门 题意简述 给你一个打印队列,每个任务都有一个优先级。现在有一个打印机,最多每分钟只能打印一个任务,如果你现在选择打印某个任务,它将在当前队列中排到底部。如果某个任务的优先级比当前队列中剩余的任务高,那么它就排在当前队列中的所有任务的后面。 已知队列顺序,和每个任务的优先级,问打印完一个指定位置的任务,所需要的分钟数。 题目思路 这道题目本质上是一道队列的模拟题目,如果想要在 $O(N^2)$ 的时间内 AC 掉的话,我们需要仔细揣摩题目的性质,思路如下: - 我们考虑不同的任务,它们在完成之后能够对结果所造成的贡献。那么显然正常打印完每一个任务,应该能够直接加上这个任务的优先级吧。 - 但是当某些任务的优先级比较高的时候,我们可以想到,我们应该把这个任务插入到前面的位置,让它短时间内完成,因为它的优先级比前面的任务都要高。 考虑最终的打印状态,假设 $f(i)$ 表示打印位置为 $i$ 的任务所需要的最少时间,那么一共有三种情况: - 这个任务的优先级大于队尾所有任务的优先级,那么我们直接在队尾加上这个任务就行了 - 这个任务的优先级小于队尾任务的优先级,那么我们直接在队尾保持不变,把这个任务插入到队列前面 - 这个任务打印完会使前面的任务都输出,那么我们将其放到一批任务中,所有这一批任务一起运行 显然我们想到可以使用双向链表模拟这个队列,来方便地实现剪切和插入的操作,这样题目就非常简单了,我们按照题意写个模拟即可。
点赞
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
专业嗎喽:硕佬,把学校背景放后面几段,学校背景双非还学院,让人看了就不想往下看。
把实习经历和个人奖项放前面,用数字化简述自己实习的成果和掌握的技能,比如负责项目一次通过率90%,曾4次发现项目潜在问题风险为公司减少损失等等 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 2025年终总结 #
162426次浏览 2747人参与
# 长城汽车工作体验 #
12633次浏览 16人参与
# 牛客2025仙途报告 #
180次浏览 3人参与
# 你面试体验感最差/最好的公司 #
11026次浏览 185人参与
# 大家实习每天都在干啥 #
105771次浏览 569人参与
# 总结:哪家公司面试体验感最差 #
83094次浏览 387人参与
# 比亚迪工作体验 #
72639次浏览 275人参与
# 一人说一个提前实习的好处 #
6527次浏览 123人参与
# 秋招落幕,你是He or Be #
6679次浏览 148人参与
# 重来一次,你会对开始求职的自己说 #
4635次浏览 117人参与
# 实习没事做是福还是祸? #
11099次浏览 180人参与
# 今年你最想重开的一场面试是? #
2257次浏览 34人参与
# 团建是“福利”还是是 “渡劫” #
5535次浏览 131人参与
# 你小心翼翼的闯过多大的祸? #
9199次浏览 130人参与
# 运营来爆料 #
71527次浏览 450人参与
# 长鑫存储求职进展汇总 #
52046次浏览 240人参与
# 招聘要求与实际实习内容不符怎么办 #
144027次浏览 869人参与
# 工作中听到最受打击的一句话 #
4039次浏览 81人参与
# 如何排解工作中的焦虑 #
246340次浏览 2268人参与
# 大厂VS公务员你怎么选 #
72945次浏览 666人参与
