上一页 1 ··· 8 9 10 11 12 13 下一页
摘要: "UVA 11624 链接" 又是一道放火的题 大致思路,火和人同时走,如果火和人同时到达某个点,则人就不能到达,所以人所到达的点应该根据这一步中火到达的点来判断。 因此我们让火先烧,火烧过的地方变成墙,同时这个点进入火的队列,在下一秒它还会继续延申。 这道题有一个坑点就是有多个火源,因为这个我wa 阅读全文
posted @ 2020-01-12 12:45 lifehappy 阅读(65) 评论(0) 推荐(0)
摘要: "POJ 3984 链接" bfs最短路的迷宫问题,加上保存路径 const int ax[4] = {1, 1, 0, 0}; const int ay[4] = {0, 0, 1, 1}; const int dir[4] = {0, 1, 2, 3}; 这三个分别代表x方向,y方向,路径移动方 阅读全文
posted @ 2020-01-11 12:51 lifehappy 阅读(172) 评论(0) 推荐(0)
摘要: "HDU 1241 链接" 连通块个数统计问题 选对一块油田八个方向进行dfs。 dfs的次数就是连通块的个数了,极度水题 阅读全文
posted @ 2020-01-09 12:55 lifehappy 阅读(77) 评论(0) 推荐(0)
摘要: "HDU 1495 题目链接" 又是最小操作次数,那么铁定bfs无疑了,因此我们只要确定操作就行了,有如下六种操作 一、 S倒入N。 二、 S倒入M。 三、 N倒入S。 四、 N倒入M。 五、 M倒入S。 六、 M倒入N。 接下来就是进行bfs操作了 阅读全文
posted @ 2020-01-08 13:01 lifehappy 阅读(161) 评论(0) 推荐(0)
摘要: "HDU 2612 题目链接" 思路 两遍bfs,第一遍以Y为起点,如果这个点是KFC则标记上Y到这个点的步数, 第二遍以M为起点,如果这个点是KFC则加上M到这个点的步数, bfs的时候注意,判断的时候不能加上continue语句,因为后面有一些点的最短步数是与这个点有关的,这样可能会导致记录的点 阅读全文
posted @ 2020-01-07 15:04 lifehappy 阅读(111) 评论(0) 推荐(0)
摘要: "POJ 2387 链接" 双向边,求最短路径长度,一道铁定的板子无疑了,这里用了堆优化的Dijkstra来写。 阅读全文
posted @ 2020-01-06 18:39 lifehappy 阅读(73) 评论(0) 推荐(0)
摘要: "POJ 2253 题目链接" 最短路的最大值问题 本来一开始用Dijkstra来写的,后来代码乱了。然后想一想还能用什么方法来写,好像kruskal好像也能处理, 每次加完边判断 0,1这两个点在不在同一颗树上,如果在的话直接跳出for循环,不在的话继续加边。 思路好像行得通,但是我在这种思路下w 阅读全文
posted @ 2020-01-05 18:55 lifehappy 阅读(60) 评论(0) 推荐(0)
摘要: "POJ 3268 题目链接" 一道最短路问题,但是和单源对短路又不一样,这里有来回的问题 首先每头牛回的路径很简单,就是以终点为起始点来通过一个dis数组来记录他们回到原粗的距离, 因为这里是单向边,每头牛到终点的距离肯定和回到起始点的距离不一样, 这里我们考虑反向建边,又再一次把问题变成的从终点 阅读全文
posted @ 2020-01-04 20:54 lifehappy 阅读(71) 评论(0) 推荐(0)
摘要: "POJ 1797 题目链接" 整体来看这道题目和青蛙的那题基本差不多 不一样的地方就在于,这道题目是只要点1,n连接就行,还有这道题是求最大边权和的最小值(通俗来讲就是最大生成树的最小边权) 因此这道题我们在sort的时候就一定要安装边权值从大到小排。 因为吸取了上道题目的经验所以这道题就很简单的 阅读全文
posted @ 2020-01-03 10:34 lifehappy 阅读(130) 评论(0) 推荐(0)
摘要: "POJ 1502 题目链接" 最短路的最大路径长度问题 考虑到点数最大是100,而且输入方式是邻接矩阵的方式,直接上Floyed的,题目比较简单(就连我都能一次性过),直接上代码吧。 阅读全文
posted @ 2020-01-02 13:32 lifehappy 阅读(68) 评论(0) 推荐(0)
上一页 1 ··· 8 9 10 11 12 13 下一页