大佬们帮我看看我是不是缩完点找答案的时候有问题qwq

P1073 [NOIP2009 提高组] 最优贸易

@[笑天真](/user/235052) 您能用自己的话先描述一下您的解题逻辑吗?这样既方便别人判断您的解题思路是否正确,也有助于您自己理清解题思路,以便后续检查代码实现是否正确。
by metaphysis @ 2020-05-16 17:52:04


@[metaphysis](/user/333388) 复制cz犇犇还行
by JRzyh @ 2020-05-16 18:02:26


@[Zhaoyuhang2008](/user/242524) 怎么不行(
by Malody @ 2020-05-16 18:26:58


@[metaphysis](/user/333388) 啊好的大佬,我这个是用tarjan 缩点之后跑DAG,缩完点我重新建了一下图,导致代码冗长且丑
by 笑天真 @ 2020-05-21 12:07:50


有两个主要的问题:(1)顶点数目上限过小,题目描述中顶点数目最大可能为 100000 个,加上后续缩点,总的顶点数目最多可以达到 200000 个,应该将顶点数目设置为 200010 较为合适。(2)您在解题中没有考虑到如下情况:在中间的某两个城市买进和卖出以赚到最多的钱。例如以下Hack数据: ``` 4 3 1 100 1 1 1 2 1 2 3 2 3 4 1 ``` 您的代码无法正确处理。原因在于您没有将可能的最大赚钱传递到后续顶点。 关于强连通分支和相应的 Tarjan 算法,您可以参考我的博客文章:[强连通分支和半连通分支](https://blog.csdn.net/metaphysis/article/details/106258376)。 有空请您访问我的 [CSDN博客](https://blog.csdn.net/metaphysis),里面有我写的一本书,内有编程竞赛相关内容的介绍,并附有对应的练习题目(题目源自UVa OJ),可免费下载此书的PDF版本:[《C++,挑战编程——程序设计竞赛进阶训练指南》](https://blog.csdn.net/metaphysis/article/details/90288252)。 @[笑天真](/user/235052)
by metaphysis @ 2020-05-21 15:52:30


@[metaphysis](/user/333388) 哇qwq谢谢大佬,爱您
by 笑天真 @ 2020-05-22 20:34:22


|