算法课复习
__喵喵喵
这个作者很懒,什么都没留下…
展开
-
算法课复习 -- 图
hihoCoder #1322 : 树结构判定传送门:https://hihocoder.com/problemset/problem/1322题意:给出一个n个顶点m条边的无向图,问是不是树。思路:首先作为一棵树必然满足n=m+1,若满足则任取一点dfs判断有没有圈,最后看是不是所有点都遍历到了。AC代码:#include<iostream>#include&...原创 2019-01-05 19:06:48 · 141 阅读 · 0 评论 -
算法课复习 -- 图、拓扑序、SCC
HDU #1232 : 畅通工程传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1232题意:给出n个点m条边,问至少还需要添加多少条边才能使整个图连通。思路:对没有访问过的点进行dfs,每次dfs中的一团为一个连通块,答案即为“连通块数量-1”。AC代码:#include<iostream>#include<c...原创 2019-01-07 20:05:54 · 453 阅读 · 0 评论 -
算法课复习 -- 优先队列、最短路
POJ #3253 : Fence Repair传送门:http://poj.org/problem?id=3253题意:给n个锯完后的木头的长度。每次锯a+b长度的木头花费a+b。问原来的一整块大木头锯完最少花费多少。思路:贪心,Huffman编码。用优先队列,每次把最小的两块拿出来相加再塞回队列,队列里最后一个元素就是答案。AC代码:#include<iostrea...原创 2019-01-13 01:17:30 · 173 阅读 · 0 评论 -
算法课复习 -- 贪心
HDU #1863 : 畅通工程传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1863题意:有n个点和m条权值边,问将整个图连通最少需要花费多少。思路:最小生成树。AC代码:#include<iostream>#include<cstdio>#include<cstring>#includ...原创 2019-01-13 15:18:36 · 128 阅读 · 0 评论 -
算法课复习 -- 分治
HDU #5178 : pairs传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5178题意:n个数,问有多少对数差值小于k。思路:排个序,开个队列。每次一个新的数先把比它小的都从队列中去了,然后答案加上队列大小,最后把自己塞进队列。按顺序走一遍行了。AC代码:#include<iostream>#include&l...原创 2019-01-13 17:59:40 · 168 阅读 · 0 评论 -
算法课复习 -- dp
HDU #2602 : Bone Collector传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2602题意:n个东西,每个东西都有它的大小和价值。给定最大容量v,问容量为v的情况下最大价值为多少。思路:最基本的背包类,要化成一维数组做的话从dp[n]往dp[1]就可以。dp[i][j]:前i个东西容量为j时的最大价值。dp[i]...原创 2019-01-13 18:48:26 · 254 阅读 · 0 评论 -
算法课复习 -- 图、BFS
POJ #2492 : A Bug's Life传送门:http://poj.org/problem?id=2492题意:二分图染色。思路:利用bfs或者dfs遍历即可,没染色的进行染色,染过的判断两点颜色是否一样。(PE的每个case要空一行)AC代码:#include<iostream>#include<cstdio>#include<...原创 2019-01-09 17:29:35 · 105 阅读 · 0 评论 -
算法课复习 -- 图、Dijkstra
HDU #1874 : 畅通工程续传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1874题意:n个点m条边的无向图,给定s和t,问从s到t的最短路。思路:单源最短路,dijkstra即可。AC代码:#include<iostream>#include<cstdio>#include<cstring...原创 2019-01-09 22:36:30 · 314 阅读 · 0 评论