随笔分类 -  题解。蒟蒻

摘要:继续是最小权值环覆盖。注意的是边为双向。#include #include #include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i<=r; i++)#defi... 阅读全文
posted @ 2015-03-31 21:24 NanoApe 阅读(250) 评论(0) 推荐(0)
摘要:最小权值环覆盖:拆点思想+求最小转求最大+KM算法#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i'9') { if (ch=='-') f=-1; c... 阅读全文
posted @ 2015-03-31 21:22 NanoApe 阅读(128) 评论(0) 推荐(0)
摘要:最小权值环覆盖问题:用几个环把所有点覆盖,求所选取的边最小的权值之和。拆点思想+求最小转求最大+KM算法#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i... 阅读全文
posted @ 2015-03-31 21:21 NanoApe 阅读(139) 评论(0) 推荐(0)
摘要:KM模版题。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i'9') { if (ch=='-') f=-1; ch=getchar(); } whil... 阅读全文
posted @ 2015-03-31 21:18 NanoApe 阅读(128) 评论(0) 推荐(0)
摘要:KM模版题。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i'9') { if (ch=='-') f=-1; ch=getchar(); } whil... 阅读全文
posted @ 2015-03-31 21:17 NanoApe 阅读(145) 评论(0) 推荐(0)
摘要:简单几何题。。。用个栈维护当前可见直线,然后通过判断三直线的交点的左右即可进行选择。#include #include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i'... 阅读全文
posted @ 2015-03-26 21:47 NanoApe 阅读(115) 评论(0) 推荐(0)
摘要:对于每一个时间区间(共N^2个)我们都做一次最短路,然后DP。#include #include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i'9') { if (c... 阅读全文
posted @ 2015-03-26 21:45 NanoApe 阅读(147) 评论(0) 推荐(0)
摘要:这道题是最小割,但是由于图的特殊性及数据范围,这道题只能用最短路做。Dijkstra+堆,112ms。【顺便说一下BZOJ的尿性,我是MLE了却硬显示是TLE,害的我。。。】#include #include #include #include #include #include #include ... 阅读全文
posted @ 2015-03-26 21:44 NanoApe 阅读(194) 评论(0) 推荐(0)
摘要:数据较大,用成Hopcroft-Karp算法更合适。其实Hopcroft-Karp算法就是一开始通过DFS预处理出Dist标号,然后利用Dist标号实现同时查找多条最短增广路的目的。#include #include #include #include #include #include #incl... 阅读全文
posted @ 2015-03-22 21:42 NanoApe 阅读(167) 评论(0) 推荐(0)
摘要:题意一开始是理解错的。。。结果就各种WA啦~对于两个观众,假如有某只宠物,一个人讨厌另一个人却喜欢,这两个人就是有矛盾的,连边。最后求最小顶点覆盖。因为把这个覆盖点集去掉的话剩下的图中没有两个点是相连的。由于不可能有奇数环的出现,总点数减去最大匹配就是答案了。最小顶点覆盖=总点数-最大匹配(无奇数环... 阅读全文
posted @ 2015-03-22 21:41 NanoApe 阅读(212) 评论(0) 推荐(0)
摘要:给定一个有向无环图【DAG图】 求最小路径覆盖。。。每个店出入分离成两个点,然后求二分图的最大匹配,最小路径覆盖=总点数-最大匹配数#include #include #include #include #include #include #include #define rep(i, l, r) ... 阅读全文
posted @ 2015-03-22 21:36 NanoApe 阅读(147) 评论(0) 推荐(0)
摘要:相邻空格连边,求最大匹配。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i'9') { if (ch=='-') f=-1; ch=getchar();... 阅读全文
posted @ 2015-03-22 21:31 NanoApe 阅读(120) 评论(0) 推荐(0)
摘要:两组牌中两张牌相比能赢的就连,后求最大匹配。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i'9') { if (ch=='-') f=-1; ch=g... 阅读全文
posted @ 2015-03-22 21:30 NanoApe 阅读(201) 评论(0) 推荐(0)
摘要:给定各个宝物的多个守卫点,求最少移走宝物个数。假如某个宝物的守卫点位于另一个宝物的位置上,则两者只能选其一,于是连边,求二分图的最小顶点覆盖。(可证明图内无奇数环)//#include #include #include #include #include #include #include #de... 阅读全文
posted @ 2015-03-22 21:28 NanoApe 阅读(180) 评论(0) 推荐(0)
摘要:二分答案,对于当前答案Ans,求出某些人类可打败某些外星人的对应边,建图后求是否有完备匹配。//#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i=r; ... 阅读全文
posted @ 2015-03-22 21:24 NanoApe 阅读(164) 评论(0) 推荐(0)
摘要:先行列分块,然后对于被强隔开的行列就分成几块,这样每个格依旧对应着行方向上的一块和列方向上的一块。最后行列二分匹配。#include #include #include //#include #include #include #include #define rep(i, l, r) for(in... 阅读全文
posted @ 2015-03-22 21:21 NanoApe 阅读(132) 评论(0) 推荐(0)
摘要:一个点集是学生,一个点集是排名。然后通过学生的排名范围连线,求此二分图的最大匹配。本题还要求是最大字典序输出,那么由贪心可得,你让标号从大到小找增广边就行了。#include #include #include #include #include #include #include #define ... 阅读全文
posted @ 2015-03-17 21:10 NanoApe 阅读(185) 评论(0) 推荐(0)
摘要:这题也是异列异行问题,而且任意输出一个解即可。。。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i=r; i--)#define N 123using ... 阅读全文
posted @ 2015-03-17 21:07 NanoApe 阅读(208) 评论(0) 推荐(0)
摘要:选取不同列不同行的N个数。。。明摆着叫你二分匹配二分答案,然后枚举边的范围并跑匈牙利,以此判断答案范围。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i... 阅读全文
posted @ 2015-03-17 21:05 NanoApe 阅读(193) 评论(0) 推荐(0)
摘要:先用染色法判断是否存在奇数环,也就是方案是否可行。然后二分匹配。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i=r; i--)#define N 23... 阅读全文
posted @ 2015-03-16 20:37 NanoApe 阅读(201) 评论(0) 推荐(0)

AmazingCounters.com