nk1851 Get Tools from Doraemon's Pocket

来源:互联网 发布:java中线程同步的方法 编辑:程序博客网 时间:2024/06/06 06:59

这题挺蛋疼的,第一个问题很好解决,第二个问题一直不会做,后来还是实验室的兄弟告诉我的;之前不会做,就去搜解题报告,谁知网上nk的解题报告少的可怜,所以我决定还是写一下,方法不管好不好,算是一件善事。

第一个问题用拓扑排序后,degree【i】为0的,说明可以取出,这样就解决了最多能取出多少的问题;第二个问题用bfs,对那些可以取出的tool进行bfs,并且做标记,以免下一个tool进行bfs时重复计算。