随笔分类 -  ACM-图论

摘要:题意:给坐标系上的一些点,其中有两个点已经连了一条边,求最小生成树的值将已连接的两点权值置为0,这样一定能加入最小生成树里最后的结果加上这两点的距离即为所求 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include... 阅读全文
posted @ 2015-04-19 16:49 miao_a_miao 阅读(208) 评论(0) 推荐(0)
摘要:题意:一些小伙伴之间有朋友关系,比如a和b是朋友,b和c是朋友,a和c不是朋友,则a和c之间存在朋友链,且大小为2,给出一些关系,求出这些关系中最大的链是多少?求最短路的最大距离 1 #include 2 #include 3 #include 4 #include 5 #include 6 #in... 阅读全文
posted @ 2015-04-19 09:20 miao_a_miao 阅读(189) 评论(0) 推荐(0)
摘要:题意:给出一棵树,找出一个点,求出所有点到这个点的权值和最大,权值为路径上所有边权的最小值。用神奇的并查集,把路按照权值从大到小排序,然后用类似Kruskal的方法不断的加入边。 对于要加入的一条路,这条路连接这城市x和y,x所在的集合为A, y所在的集合为B, 可以确定A,B集合内的所有路都比当前... 阅读全文
posted @ 2015-04-15 22:18 miao_a_miao 阅读(233) 评论(0) 推荐(0)
摘要:不错的思想 1 /* 2 大致题意: 3 4 用n个导弹发射塔攻击m个目标。每个发射架在某个时刻只能为 5 一颗导弹服务,发射一颗导弹需要准备t1的时间,一颗导弹从发 6 射到击中目标的时间与目标到发射架的距离有关。每颗导弹发 7 射完成之后发射架需要t2的时间进入下个发射流程。现在... 阅读全文
posted @ 2015-04-09 22:45 miao_a_miao 阅读(177) 评论(0) 推荐(0)
摘要:注意排序即可 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 #define for0n for(i=0;i<n;i++) 9 #define fo... 阅读全文
posted @ 2015-04-05 10:53 miao_a_miao 阅读(201) 评论(0) 推荐(0)
摘要:题意:一个动物园里有N只猫和K只狗,一些小朋友来参观,他们如果喜欢狗就不喜欢猫,喜欢猫就不喜欢狗,园长想要移走一些动物,如果,移走的是某个小朋友不喜欢的,而喜欢的没被移走,该小朋友就会高兴,求移动的数目使得最多的小朋友开心Sample Input1 1 2 //1个猫1个狗2个小朋友C1 D1 ... 阅读全文
posted @ 2015-04-02 22:59 miao_a_miao 阅读(116) 评论(0) 推荐(0)
摘要:大致题意: 给出一个又n个点,m条边组成的无向图。给出两个点s,t。对于图中的每个点,去掉这个点都需要一定的花费。求至少多少花费才能使得s和t之间不连通。大致思路: 最基础的拆点最大流,把每个点拆作两个点 i 和 i' 连接i->i'费用为去掉这个点的花费,如果原图中有一条边a->b则连接a'-... 阅读全文
posted @ 2015-03-22 10:29 miao_a_miao 阅读(133) 评论(0) 推荐(0)
摘要:很裸的一道最大流格式懒得排了,注意把人拆成两份,一份连接食物,一份连接饮料4 3 3 //4个人,3种食物,3种饮料1 1 1 //食物每种分别为11 1 1 //饮料每种数目分别为1YYN //第一个人对第1,2,3种食物的态度为接受,接受和拒绝NYYYNYYNYYNY //第一个人... 阅读全文
posted @ 2015-03-22 00:03 miao_a_miao 阅读(210) 评论(0) 推荐(0)
摘要:模板套起来1 5 7 //5个结点,7个边3 3 //坐标3 0 3 10 04 51 3 3 //相连的结点和流2 3 42 4 31 5 64 5 31 4 43 4 29 1 #include 2 #include 3 #include 4 using namespace s... 阅读全文
posted @ 2015-03-18 21:21 miao_a_miao 阅读(144) 评论(0) 推荐(0)
摘要:没啥好说的,慢慢建图Sample Input4 A B C D 5 laptop B phone C pager B clock B comb X 3 B X X A X D Sample Output1题意:有n个不同的插座,有m台不同的机器需要m种插头,有k组转换:插头A能由插头B转换而来。问这... 阅读全文
posted @ 2015-03-05 23:20 miao_a_miao 阅读(140) 评论(0) 推荐(0)
摘要:很巧妙的思想转自:http://www.cnblogs.com/kuangbin/archive/2012/08/21/2649850.html本题能够想到用最大流做,那真的是太绝了。建模的方法很妙!题意就是有N头牛,F个食物,D个饮料。N头牛每头牛有一定的喜好,只喜欢几个食物和饮料。每个食物和饮料... 阅读全文
posted @ 2015-03-05 17:18 miao_a_miao 阅读(285) 评论(0) 推荐(0)
摘要:由于路径可以有重复的点,所以需要将间接相连的点连接 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 //顶点编号从0开始的 7 const int MAXN=510; 8 int uN,vN;//u,v数目 9... 阅读全文
posted @ 2015-03-05 16:47 miao_a_miao 阅读(126) 评论(0) 推荐(0)
摘要:题意:有一个矩阵,某些格有人,某些格有房子,每个人可以上下左右移动,问给每个人进一个房子,所有人需要走的距离之和最小是多少。貌似以前见过很多这样类似的题,都不会,现在知道是用KM算法做了KM算法目前还没弄懂,先套模板做Sample Input2 2.mH.5 5HH..m................. 阅读全文
posted @ 2015-03-04 23:46 miao_a_miao 阅读(418) 评论(0) 推荐(0)
摘要:题目大意;有两台机器A和B以及N个需要运行的任务。每台机器有M种不同的模式,而每个任务都恰好在一台机器上运行。如果它在机器A上运行,则机器A需要设置为模式xi,如果它在机器B上运行,则机器A需要设置为模式yi。每台机器上的任务可以按照任意顺序执行,但是每台机器每转换一次模式需要重启一次。请合理为每个... 阅读全文
posted @ 2015-03-04 23:05 miao_a_miao 阅读(146) 评论(0) 推荐(0)
摘要:Sample Input40:(1) 11:(2) 2 32:(0)3:(0)53:(3) 1 4 21:(1) 02:(0)0:(0)4:(0)Sample Output12最小点覆盖=最大匹配数水题,懒的拍了 1 #include 2 #include 3 #include 4 #include... 阅读全文
posted @ 2015-03-04 22:45 miao_a_miao 阅读(122) 评论(0) 推荐(0)
摘要:题意用1*2的木板覆盖矩阵中的‘#’,(木板要覆盖的只能是‘#’),问最多能用几个木板覆盖将#抽象为二分图的点,一个木板就是一个匹配,注意最后结果要除以2Sample Input16.......##....##.......#.....##......Sample OutputCase 1: 3 ... 阅读全文
posted @ 2015-03-04 10:51 miao_a_miao 阅读(141) 评论(0) 推荐(0)
摘要:Sample Input2 1 1 2 (0,1)20 (1,0)10 (0)15 (1)207 2 3 13 (0,0)1 (0,1)2 (0,2)5 (1,0)1 (1,2)8 (2,3)1 (2,4)7 (3,5)2 (3,6)5 (4,2)7 (4,3)5 (4,5)1 (6... 阅读全文
posted @ 2015-02-10 19:58 miao_a_miao 阅读(263) 评论(0) 推荐(0)
摘要:原文地址:http://www.cppblog.com/MatoNo1/archive/2011/07/13/150766.aspx【2-SAT问题】现有一个由N个布尔值组成的序列A,给出一些限制关系,比如A[x]AND A[y]=0、A[x]OR A[y]OR A[z]=1等,要确定A[0..N-... 阅读全文
posted @ 2015-02-10 17:04 miao_a_miao 阅读(3113) 评论(0) 推荐(1)
摘要:题目:在保证尽量多的“车”的前提下,棋盘里有些格子是可以避开的,也就是说,不在这些格子上放车,也可以保证尽量多的“车”被放下。但是某些格子若不放子,就 无法保证放尽量多的“车”,这样的格子被称做重要点。Gardon想让小希算出有多少个这样的重要点,你能解决这个问题么?二分图匹配居然还能这么用!!!脑... 阅读全文
posted @ 2015-02-09 21:11 miao_a_miao 阅读(125) 评论(0) 推荐(0)
摘要:题意:有n个学生,有m对人是认识的,每一对认识的人能分到一间房,问能否把n个学生分成两部分,每部分内的学生互不认识,而两部分之间的学生认识。如果可以分成两部分,就算出房间最多需要多少间,否则就输出No。首先判断是否为二分图,然后判断最大匹配Sample Input4 41 21 31 42 36 5... 阅读全文
posted @ 2015-02-08 19:29 miao_a_miao 阅读(925) 评论(0) 推荐(0)