09 2015 档案
摘要:题意:8个方向如果能够连成一块就算是一个连通块,求一共有几个连通块。分析:网上的题解一般都是dfs,但是今天发现并查集也可以解决,为了方便我自己理解大神的模板,便尝试解这道题目,没想到过了。。。 1 #include 2 #include 3 #include 4 #include ...
阅读全文
摘要:题意:求两个n*n的矩阵相乘的结果,得出的每个元素%3;分析:2000ms然后n的范围是800,我们自己估算的时间复杂度并不会超时,但是结果就是超时了。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7...
阅读全文
摘要:1 int scan() 2 { 3 int res = 0 , ch; 4 while( !( ( ch = getchar() ) >= '0' && ch <= '9' ) ) 5 { 6 if( ch == EOF ) return 1 << 30 ; 7 } 8 res = ch - '0
阅读全文
摘要:题意:给n个点,然后给几个数对,每个数字代表一个圆环,表示这两个环连在一起,然后求需要打开几个环,能够让这n个环形成一个链。 分析:因为n的范围是1~15,所以可以二进制枚举哪个环需要断开,然后在该状态下判断是否满足条件(即当前没有环,并且所有的都没有两个分支),并且判断需要断开的部分是否大于等于原
阅读全文
摘要:题意:平面上有n个点(1 2 #include 3 #include 4 #define ll long long 5 using namespace std; 6 const int maxn=1005; 7 int x[maxn],y[maxn],p[maxn]; 8 #defin...
阅读全文
摘要:题意:给n个节点m条带权值边的无向图。然后q个问题,每次询问点对的数目,点对需要满足的条件是:1)连通;2)其路径的最大权值不能超过询问值。分析:如果没次询问一次,dfs一次,很可能超时,因此可以用并查集。离线处理,把边按权值排序,把问题按大小排序。然后离线的过程就是不断向图中加边的过程。比如样例如...
阅读全文
摘要:题意:给定n个点,m条边的无向图(没有重边和子环)。从给定点出发,每个时间走到相邻的点,可以走重复的边,相邻时间不能停留在同一点,判断是否存在某个时间停留在任意的n个点。分析:(1)首先,和出发点的位置没有关系。因为可以走重复的边,且时间没有限制大小。(2)图必须是联通的(3)1)图为:2-0-1-...
阅读全文
摘要:题意和POJ1635一样,只是多了一项输出路径。 1 #include <iostream> 2 #include <cstdlib> 3 #include <cstdio> 4 #include <string> 5 #include <cstring> 6 #include <cmath> 7
阅读全文
摘要:题意:一张混合图,判断是否存在欧拉回路。分析参考:混合图(既有有向边又有无向边的图)中欧拉环、欧拉路径的判定需要借助网络流!(1)欧拉环的判定:一开始当然是判断原图的基图是否连通,若不连通则一定不存在欧拉环或欧拉路径(不考虑度数为0的点)。其实,难点在于图中的无向边,需要对所有的无向边定向(指定一个...
阅读全文
摘要:题意:三维空间中有n个洞,告诉圆心以及半径,以及起点和终点,求最短路径长度。 分析:n < 100因此可以用floyd。关键是建图方法,其实就是当做n+2个洞,然后floyd(距离:相交就是0,否则就是两点圆心距离 - 半径和),然后算起点和终点的距离。 1 #include <cstdio> 2
阅读全文
摘要:题意: 首先给出n和m,表示有n个bug和m个补丁。一开始存在n个bug,用1表示一个bug存在0表示不存在,所以一开始就是n个1,我们的目的是要消除所有的bug,所以目标状态就是n个0。对于每个补丁,会给出使用这个补丁的时间,另外会给出两个长度为n的字符串第一个字符串表示这个补丁适用于什么情况下的
阅读全文
摘要:题意:给出一些插头,电器,以及转换器,求不能够匹配的电器的最小的数目;转换器是无限多的,有可能有重边。 分析:典型的二分图匹配,但是看题解也有用最大流做的(最大流并不会建模型)。电器,插头两个集合匹配,无法与电器直接相连的插头需要转换器进行转换。 1 #include<cstdio> 2 #incl
阅读全文
摘要:转载最短路问题此类问题类型不多,变形较少POJ 2449 Remmarguts' Date(中等)http://acm.pku.edu.cn/JudgeOnline/problem?id=2449题意:经典问题:K短路解法:dijkstra+A*(rec),方法很多相关:http://acm.pku...
阅读全文
摘要:找了好久这两个的区别。。。UVA820 WA了 好多次。不过以后就做模板了,可以求任意两点之间的最大流。UVA 是无向图,因此可能有重边,POJ 1273是有向图,而且是单源点求最大流,因此改模板的时候注意一下。而且我居然犯了更愚蠢的错误,以为重边的时候需要选最大的,正解应该是累加。。。。 1 #i...
阅读全文
摘要:转载百度文库花了5分下的不过确实是自己需要的东西经典的最大流题POJ1273——其他练习题POJ3436、题意描述:现在有m个池塘(从1到m开始编号,1为源点,m为汇点),及n条水渠,给出这n条水渠所连接的池塘和所能流过的水量,求水渠中所能流过的水的最大容量.一道基础的最大流题目。但是模板小心使用,...
阅读全文
摘要:题意:有个N*N的网格,有一部分格子里有陨石,小明有很牛逼的武器,打一枪后一行或一列的陨石就没了,给出陨石分布,求最小打炮数。分析:其实就是Konig定理。记最小打炮数为m,在网格里你最多可以找出M个互相之间既不在同一行又不在同一列的元素,也就是说你再找一个元素它必定与已有的某个元素同行或同列,Ko...
阅读全文
摘要:地址题意:求在m种颜色中挑选k种颜色,给n个花朵涂色有几种方法。分析:画图可以发现,基本的公式就是k ×(k-1)^(n-1)。但这仅保证了相邻颜色不同,总颜色数不超过k种,并没有保证恰好出现k种颜色;接着就是一个容斥问题,上述计算方法中包含了只含有2、3、…、(k-1)种颜色的情况,需要通过容斥原...
阅读全文
摘要:题意:给定一个Y行X列的网格,网格种有重要位置和障碍物。要求用最少的机器人看守所有重要的位置,每个机器人放在一个格子里,面朝上下左右四个方向之一发出激光直到射到障碍物为止,沿途都是看守范围。机器人不会阻挡射线。“#”表示障碍物,“*”表示重要的位置,箭头表示最终机器人匹配的位置,求出机器人能够匹配出...
阅读全文
摘要:题意:给一个图,每个点有点权,每两个点最多有一条边相连,每个点至少和一个点通过边相连。要找出这样一个团,使得团内所有的点两两都有边相连且边不交叉,并且点权最大。 分析:因为是正宗的英语,所以当时读题目漏了一个条件 边不交叉,难度一下升级了,最终没能做出来。其实如果有这个条件,本来以为最多有三个点,再
阅读全文

浙公网安备 33010602011771号