第一题:1079 Total Sales of Supply Chain (25分)
这个我是想到用线型处理,避免用深度或者广度遍历标记节点,这确实是一种好方法,不过问题是题目给出的输出顺序并不是顺序输入,意味着可能第一次就输入了最后一个节点信息,这时候该节点的前一个节点是未知的,所以需要变换一下。不变换提交除了标准测试案例过不了,其余所有测试点都能过,一开始遇到这个情况真是让我大开眼界,标准案例过不了,其余的竟然都可以过。
第二题:1090 Highest Price in Supply Chain (25分)
这个题目和上一个神似但是本质上还是有点区别,果然PAT考的很细心,我有一个地方就是根节点的层数为0,肯定不是最大值,所以一开始初始化map的时候我就故意忽略了这个点,但是测试的时候刚好测试点4就是考察的只有一个根节点的情况。所以还是需要考虑周全。
第三题:1094 The Largest Generation (25分)
这个题就是DFS计算一下每一层的数量。
第四题:1106 Lowest Price in Supply Chain (25分)
这个题我属实找不到最后一个测试点的问题了,留个小尾巴,后期修改。
这个题我想明白为什么了,原因在于层数的计算错误,因为每次更新都是只能更新下一层,导致数据过多的时候下下下层无法保证正确性。还是需要B/DFS解决。