ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

HNOI2015 菜肴制作贪心的证明

2020-03-26 19:03:50  阅读:227  来源: 互联网

标签:菜肴 这个 删除 最小 后继 HNOI2015 序列 贪心


发现如果要让小的点尽量靠前,则它的前驱选完后紧接着就选这个点。

考虑这个贪心:假设底图连通,建反图,每次选全局最小点(初始是1),把非这个最小点的后继(间接的也算)和1号点从图中删除,接着选还留下的点中点权最小的,把非这个最小点的后继(间接的也算)和当前点从图中删除,以此类推直到图只有1个点,则把现在这个点插入到答案序列的末尾,正确性显然。

但是1e5的数据范围不允许我们使用这个贪心。实际上,当前全局最小点的前驱选完后紧接着就选这个点,所以这个点和它的后继肯定占用了答案序列的一段前缀。把这个前缀从答案序列和图中删除,继续执行这个过程直到只有1个点。则未被删除的最后一个点肯定是目前权值最大且没有出度的点。这个点肯定在答案序列的末尾,把这个点删除,继续删除它的后继的编号最小的点,实际上就是使用大根堆进行的拓扑排序。

这个结论在agc001f上也有运用

标签:菜肴,这个,删除,最小,后继,HNOI2015,序列,贪心
来源: https://www.cnblogs.com/cszmc2004/p/12576542.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有