上一页 1 ··· 4 5 6 7 8 9 下一页
摘要: type node=^link; link=record des:longint; next:node; end; type seg=record z,y,lc,rc,toadd,sum:longint; end; var n,tot 阅读全文
posted @ 2016-03-16 13:39 z1j1n1 阅读(288) 评论(0) 推荐(0) 编辑
摘要: procedure euler; var i,j:longint; begin phi[1]:=1; for i:=2 to n do begin if not mark[i] then begin inc(tot); p[tot]:=i; phi[i]:=i-1; end; for j:=1 to n do begin if i*p[j]>n then break; mark[i*p[j]]:=true; if i mod p[j]=0 then begin phi[i*p[j]]:=phi[i]*p[j]; break; 阅读全文
posted @ 2016-03-14 15:29 z1j1n1 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 昨天写了一个后缀数组,发现空间复杂度是nlogn的。 改正后的 c++ 阅读全文
posted @ 2016-03-10 11:04 z1j1n1 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 其中height[i]表示suffix(i)与suffix(sa[rank[i]-1])的最长公共前缀 ____________________________________________________ c++ 其中height[i]表示rank[i]+1与rank[i]的最长公共前缀 阅读全文
posted @ 2016-03-09 15:49 z1j1n1 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 先上我原来的错误的代码 type node=^link; link=record num:int64; next:node; end; var fa:array[0..300000,0..100] of int64; dep:array[0..300000] of int64; nd:array[0 阅读全文
posted @ 2016-03-08 09:43 z1j1n1 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 最小费用最大流 最大费用最大流 边表模板 BZOJ4276 用线段树优化费用流 阅读全文
posted @ 2016-03-03 10:58 z1j1n1 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 最大流=最小割=正点权和-最大闭合权图 其中求最大闭合权图时,源点向所有点权为正的点连容量为点权的边,所有点权为负的点向汇点连容量为点权绝对值的边 表示约束关系的边容量为无穷大,i前必须做j,i连向j 阅读全文
posted @ 2016-03-01 15:02 z1j1n1 阅读(315) 评论(0) 推荐(0) 编辑
摘要: c++ BZOJ1059 另外, 最小点覆盖数=最大匹配数 最大独立集=顶点数-最大匹配数最小路径覆盖数 = 顶点数 - 最大匹配数 _____________________________________________ BZOJ1443 确定一个点是否为匹配的必选点,后手走匹配边 (确定必选边 阅读全文
posted @ 2016-02-24 14:56 z1j1n1 阅读(305) 评论(0) 推荐(0) 编辑
摘要: type jd=record z,y,lc,rc,sum,toadd:int64; end; var tree:array[0..800000] of jd; qzh:array[0..200000] of int64; x:array[1..200000] of int64; n,m,a,b,k, 阅读全文
posted @ 2016-02-24 14:52 z1j1n1 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 求最小值所有边取相反数后KM,输出有答案的相反数 求最小乘积先求对数再KM 阅读全文
posted @ 2016-02-24 14:21 z1j1n1 阅读(276) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 下一页