11 2018 档案

摘要:#include using namespace std; #define ULL unsigned long long #define LL long long const LL mod=998244353; const int maxn=20+10; const int n=24; int r[maxn]; int b[maxn]; struct edge{int u,v,w;}; vec... 阅读全文
posted @ 2018-11-08 21:17 BIack_Cat 阅读(131) 评论(0) 推荐(0)
摘要:POJ 2226 比这题难一点在于它要求覆盖的行或者列只能覆盖*不能覆盖到.我们同样可以构造二分图,对于原图中的每一个'*'都可以把它当做一条边,连接的是它所在*联通列的最上一点,和它所在*联通行的最左一点这样求出来的最小覆盖的点集中的点 如果在二分图左边的就是覆盖该点所在列,在二分图右边则覆盖该点所在行#include #include #include #include #includ... 阅读全文
posted @ 2018-11-03 17:39 BIack_Cat 阅读(275) 评论(0) 推荐(0)
摘要:#include #define LL long long using namespace std; const LL mod=1e9+7; const int maxn=1e6+10; #define lowbit(x) (x&(-x)) struct BIT { LL**a;int n,m; BIT(){a=0;n=m=-1;} BIT(int n,int m):n... 阅读全文
posted @ 2018-11-01 21:05 BIack_Cat 阅读(153) 评论(0) 推荐(0)
摘要:#include #define LL long long using namespace std; const LL mod=1e9+7; const int maxn=5e5+10; int n;LL t; inline int read() { int x=0,f=1;char ch=getchar(); while(ch'9'){if(ch=='-')f=-1;ch=g... 阅读全文
posted @ 2018-11-01 21:02 BIack_Cat 阅读(182) 评论(0) 推荐(0)