随笔分类 -  图论

摘要:题意: 给一个n*m的矩阵作为地图,0为通路,1为阻碍。只能向上下左右四个方向走。每一年会在一个通路上长出一个阻碍,求第几年最上面一行与最下面一行会被隔开。 输入: 首行一个整数t,表示共有t组数据。 每组数据首行两个整数n, m,表示矩阵大小。 接下来输入矩阵。 接下来输入一个整数q,表示一共q年 阅读全文
posted @ 2016-03-31 22:01 mypride 阅读(175) 评论(0) 推荐(0)
摘要:废话:这道题不难,稍微构造一下图就可以套最大流的模板了。但是我还是花了好久才解决。一方面是最近确实非常没状态(托词,其实就是最近特别颓废,整天玩游戏看小说,没法静下心来学习),另一方面是不够细心,输出格式错了大意没有发现死一只和死多只之间的区别,卡在那里动不了。题意:在一张n*m的地图中,有一群蜥蜴... 阅读全文
posted @ 2015-11-07 19:52 mypride 阅读(391) 评论(0) 推荐(0)
摘要:题意:给一个n*m的矩阵,其中由k个人和k个房子,给每个人匹配一个不同的房子,要求所有人走过的曼哈顿距离之和最短。输入:多组输入数据。每组输入数据第一行是两个整型n,m,表示矩阵的长和宽。接下来输入矩阵。输出:输出最短距离。题解:标准的最小费用最大流算法,或者用KM算法。由于这里是要学习费用流,所以... 阅读全文
posted @ 2015-10-13 21:27 mypride 阅读(798) 评论(0) 推荐(0)
摘要:题意:告诉我们有m个任务和k个机器。第i个任务需要ci天完成,最早从第ai天开始,最晚在第bi天结束。每台机器每天可以执行一个任务。问,是否可以将所有的任务都按时完成?输入:首行输入一个整数t,表示共有t组数据。接下来,每组数据第一行输入两个整数k,m,表示共有k项任务,m台机器。接下来k行,每行包... 阅读全文
posted @ 2015-10-07 21:50 mypride 阅读(223) 评论(0) 推荐(0)
摘要:最大流首次体验感受——什么是最大流呢?从一个出发点(源点),走到一个目标点(汇点),途中可以经过若干条路,每条路有一个权值,表示这条路可以通过的最大流量。最大流就是从源点到汇点,可以通过的最大流量。接下来我们看一个图——图1这个图中,s是源点,t是汇点。期间可以经过2,3,4,5,6几个点。每条边上... 阅读全文
posted @ 2015-10-07 21:00 mypride 阅读(569) 评论(0) 推荐(0)
摘要:题意:输入一棵树,判断这棵树在以节点1为根节点时,是否是一棵特殊的树。相关定义:1. 定义f[A, i]为树A上节点i到节点1的距离,父节点与子节点之间的距离为1。2. 对于树A与树B,如果A与B的节点数相同,且无论i为何值,f[A, i]与f[B, i]都相等,则A与B为两棵相似的树。3. 对于一... 阅读全文
posted @ 2015-08-31 19:48 mypride 阅读(197) 评论(0) 推荐(0)
摘要:题意:一共有30000个箱子,刚开始时都是分开放置的。接下来会有两种操作:1. M x y,表示把x箱子所在的一摞放到y箱子那一摞上。2. C y,表示询问y下方有多少个箱子。输入:首行输入一个整数m,表示一共有m次操作。接下来每次操作都是上面所说的两种中的一种。输出:每次C y,输出一个结果,每次... 阅读全文
posted @ 2015-08-22 17:30 mypride 阅读(212) 评论(0) 推荐(0)
摘要:题意:有一个运动场,运动场的坐席是环形的,有1~300共300列座位,每列按有无限个座位计算T_T。输入:有多组输入样例,每组样例首行包含两个正整数n, m。分别表示共有n个人,m次操作。接下来m行,每行包含a, b, x三个整数,表示a在b右边x个位置。输出:如果a,b的关系已经存在,新操作如果获... 阅读全文
posted @ 2015-08-22 17:11 mypride 阅读(203) 评论(0) 推荐(0)
摘要:这道题说,在很久很久以前,有一个故事。故事的名字叫龙珠。后来,龙珠不知道出了什么问题,从7个变成了n个。在悟空所在的国家里有n个城市,每个城市有1个龙珠,第i个城市有第i个龙珠。然后,每经过一段时间,城市i的所有的龙珠都会被转移到城市j中。现在有两种操作:1. T A B,表示将A龙珠所在城市的所有... 阅读全文
posted @ 2015-08-21 16:30 mypride 阅读(208) 评论(0) 推荐(0)
摘要:了解了种类并查集,同时还知道了一个小技巧,这道题就比较容易了。其实这是我碰到的第一道种类并查集,实在不会,只好看着别人的代码写。最后半懂不懂的写完了。然后又和别人的代码进行比较,还是不懂,但还是交了。现在回过头来看,又看了一遍。题意——输入——给出多组测试数据。每组数据第一行包含两个整数n, m。n... 阅读全文
posted @ 2015-08-19 21:16 mypride 阅读(245) 评论(0) 推荐(0)
摘要:先说说种类并查集吧。 种类并查集是并查集的一种。但是,种类并查集中的数据是分若干类的。具体属于哪一类,有多少类,都要视具体情况而定。当然属于哪一类,要再开一个数组来储存。所以,种类并查集一般有两个数组,一个存并查集内的父子关系,一个存各个节点所属的种类关系。 以这道题为例(题意在后面,如果没有读题, 阅读全文
posted @ 2015-08-19 20:41 mypride 阅读(585) 评论(1) 推荐(0)
摘要:感觉有些难的题,刚开始就想到了设立虚节点,但是实现总是出错,因为每次设立了虚节点之后,无法将原节点和虚节点分开,导致虚节点根本无意义。以上纯属废话,可以忽略……题意——给定n个点(0, 1, 2, ..., n-1),可进行两种操作:1. 将两个点合并到一个集合中; 2. 将一个点从原有集合中取出。... 阅读全文
posted @ 2015-07-29 22:05 mypride 阅读(246) 评论(0) 推荐(0)
摘要:想不到这还可以用并查集解,不过后来证明确实可以……题意也有些难理解——给你一个锁,这个所由n个字母组成,然后这个锁有m个区间,每次可以对一个区间进行操作,并且区间中的所有字母要同时操作。每次操作可以将区间中所有字母+1。即把a变成b,把z变成a。举个例子,比如有一个锁,由abcdef组成,前三个字母... 阅读全文
posted @ 2015-07-23 22:00 mypride 阅读(620) 评论(0) 推荐(1)
摘要:同样是看别人题解才明白的题目大意——话说秦始皇统一六国之后,打算修路。他要用n-1条路,将n个城市连接起来,并且使这n-1条路的距离之和最短。最小生成树是不是?不对,还有呢。接着,一个自称徐福的游方道士突然出现,他说他可以不消耗任何人力财力,使用法术凭空造一条路,路的长度无所谓,但是只能造一条。那么... 阅读全文
posted @ 2015-07-17 21:06 mypride 阅读(218) 评论(0) 推荐(0)
摘要:搜了题解才把题搞明白。明白之后发现其实题意很清晰,解题思路也很清晰,只是题目表述的很不清晰……大意如下——给你一个无向图,图中任意两点的距离是两点间所有路径上的某一条边,这条边需要满足两个条件:1. 这条边这两点间某条路径上的最长边;2. 这条边是这两点间所有路径上的最长边中的最短边。简单来说,假如... 阅读全文
posted @ 2015-07-16 21:11 mypride 阅读(182) 评论(0) 推荐(0)
摘要:题目比较简单,但作为长久不写题之后的热身题还是不错的。统计每组朋友的朋友圈的大小。如果a和b是朋友,这个朋友圈的大小为2,如果b和c也是朋友,那么a和c也是朋友,此时这个朋友圈的大小为3。输入t,表示接下来有t组数据。每组数据有n组朋友关系。接下来n行,每行一组朋友关系,然后输出这组朋友的朋友圈大小... 阅读全文
posted @ 2015-07-16 12:46 mypride 阅读(287) 评论(0) 推荐(0)
摘要:转自——http://blog.csdn.net/qwe20060514/article/details/8112550=============================以下是最小生成树+并查集======================================【HDU】1213 H... 阅读全文
posted @ 2015-06-25 21:00 mypride 阅读(443) 评论(0) 推荐(0)
摘要:这是一道标准的模板题,所以拿来作为这一段时间学习最短路的总结题目。 题意很简单: 有多组输入数据,每组的第一行为两个整数n, m。表示共有n个节点,m条边。 接下来有m行,每行三个整数a, b, c。表示从a到b或从b到a长度为c。 求从1到n的最短路。 先说Floyd—— 这个算法看上去就是一个三 阅读全文
posted @ 2015-06-02 00:01 mypride 阅读(279) 评论(0) 推荐(0)
摘要:这道题算是我拓扑排序入门的收棺题了,卡了我好几天,期间分别犯了超时,内存溢出,理解WA,细节WA,格式WA……题目的意思大概是在一个三维坐标系中,有一大堆矩形,这些矩形的每条棱都与坐标轴平行。这些矩形有4种情况——1. 有重合部分(I a b) 表示a与b重合;2. a的x坐标大于b的x坐标(X a... 阅读全文
posted @ 2015-05-14 17:23 mypride 阅读(290) 评论(0) 推荐(0)
摘要:一道极其水的拓扑排序……但是我还是要把它发出来,原因很简单,连错12次……题意也很裸,前面的废话不用看,直接看输入输入n, m表示从0到n-1共n个人,有m组关系截下来m组,每组输入a, b表示a指向b,或者b指向a也行。输入n == 0时结束如果可以拓扑排序,输出"YES",否则输出"NO"。每组... 阅读全文
posted @ 2015-05-05 23:49 mypride 阅读(164) 评论(0) 推荐(0)