摘要:
大赛的题,题目叙述往往很花哨,考验阅读的准确获取信息和凝练能力 做这道题吃了很多系统知识不熟悉的亏,遇到了很多RE和TLE。 RE是因为想用一个类来保存,但是可惜这道题数据太大,开了GDB进去才发现segment fault的问题 TLE就非常玄学,后面参考Kuangbin的思路重新写才卡时间过。思 阅读全文
摘要:
之前在POJ做过另外一道类似货币判断负环的问题,感觉那个更有挑战性也更富有变化些 这道题因为是有多组输入,为了避免一直初始化清空之前运算时用过的变量,同时也为了利用SPFA方式(从代码实现的间接性和容易成程度,应该原始的BellmanFord而非优化后的SPFA算法更合适)尝试利用类进行管理 #in 阅读全文
摘要:
Floyd这个算法写起来真的快乐和精妙 一开始下意识的就选择利用DFS的拓扑排序去解决,但是这样发现实现起来非常复杂,找数据的时候看到了有人提floyd,瞬间这道题就简单了。 正序逆序一遍,一个可以确定rank的奶牛必定保证正序(可以打败的人数)逆序(会被打败的人数)和为n-1 #include < 阅读全文
摘要:
一道水题就这么不幸贡献了两发WA,原因在于没有审题啊。关于输出要求,人家明确说了第一个到其他的距离 题目信息量略大(低情商:废话过多),很简单的最短路,因为没有仔细读题错误理解成了所有节点对最短路径的最大值。采取了floyd算法,不过时间复杂度很小,并无大问题。 此外,初始化,以及对于输入数据读取都 阅读全文
摘要:
这几天转去尝试做leetcode,意外发现其实leetcode题做做还是挺有收获的,不过感觉OJ做起来收获更大些,这两个还是结合起来做好点。 这道题思路还是比较清晰的,利用bellman ford的思路,不过因为图可能不连通,所以参考kuangbin大佬的思路加了一个“超级源”(因为此题只需要判断负 阅读全文
摘要:
Bellman-ford算法的队列优化,SPFA的应用,数据结构和算法结合真是太精妙了 当然这道题不幸贡献了两发WA,原因是我愚蠢的忘记了货币值的数组应该开成浮点数,第二次则是因为输出没有'\n'(这个题目的叙述很不好,这样结尾根本没法判断有无换行符) #include <iostream> #in 阅读全文
摘要:
下意识想到了Floyd算法,不过在寻找数据的时候才发现没有仔细分析时间复杂度的弊端(也可能是因为自己这方面的能力弱,所以抵触去分析时间复杂度) 利用刘汝佳的模板,dijkstra是可以满足时间复杂度要求的解法。此外,单源最短路径和单“汇”最短路径其实是对称的问题(正是本题需要dijkstra同时求解 阅读全文
摘要:
求路径中最小值的最大值,应该可以利用网络流的方法解决,不过这道题就利用了dijkstra的方法解决了。 此前POJ 2253利用Floyd方法解决的思路应该也可以应用到这种方法上来 #include <iostream> #include <algorithm> #include <queue> # 阅读全文
摘要:
这道题可以看作一个DAG(有向无环图)上的DP。 不幸贡献一个WA,这个问题在最初考虑是考虑到的,就是以其中两个维度做底,但是长和宽是相对的。也就是在初始构造“图”的时候,比较两个block的底时忽略了其实有两种比较方法,可以看下代码的Init中关于图构建分支条件。 #include <iostre 阅读全文