摘要:
#include #include #include #include #include using namespace std; const int MAXN=10100; const int MAXM=40010; const int INF=0x3f3f3f3f; struct Edge //cost代表单位流量流过该边时,所需的费用大小 { int to... 阅读全文
摘要:
#include #include #include #include using namespace std; const int MAXN=100010; //点的个数 const int MAXM=400010; //边的个数 const int INF=0x3f3f3f3f; struct Edge { int to,next,cap,flow; //cap代... 阅读全文
摘要:
状态转移并不是顺序执行的,是随机到某些位置,所以,需要保留上一个状态 题意是有一些支票,上面有不同的价格,两个人拿支票,要求每个人拿的支票的价值的异或值为相同,求两个人能拿支票的方法有多少种,每个人可以不拿支票 方法: 两个数相等,则两个数的异或值为0,所以只需要找一些数,是这些数的异或值为0即可。 阅读全文
摘要:
包含在c++<algorithm>库中的next_permutation(arr,arr+n)函数可以实现arr中元素的全排列 但是要求arr中元素事先已经按字典序排列好 具体使用方法如下: 阅读全文
摘要:
ax=b(mod n) (1), 求解x 已知 ax+ny=gcd(a,n) (2),对等式两边取模 ax=gcd(a,n)(mod n) (3) 所以,原方程有解的条件是gcd(a,n)|b,即b=k*gcd(a,n); 所以,通过求解(2)可以得到x' 而x=x'*b/gcd(a,n)得到所求解 阅读全文
摘要:
两队比赛:(1)一队一直领先比分直到比赛结束。(2)一队的比分一直没有领先,直到对手得到最后一分 阅读全文
摘要:
静态字典树比动态字典树节省时间,动态字典树创建指针的过程太浪费时间 阅读全文
摘要:
#include #include #include using namespace std; int next1[1000010]; int m; char b[1000010]; void build_next() { int i=0; int j=-1; next1[0]=-1; while(i<m) { while(j!... 阅读全文