- 博客(88)
- 收藏
- 关注
原创 网络流学习笔记
目录1最大流最小割基本概念1) 如何求最大流https://www.luogu.org/problemnew/show/P3376dinic 算法主要思路dfsint dfs(int u,int dist)// 目前流量{ if(u==t||!dist) return dist;// 到达汇点或者已经没有流量 int res=0; for(int i=head[u...
2019-01-30 07:12:10 146
原创 逆元
1设 inv[b] 是 b 的逆元, 那么 (a/b) %p = (a*inv[b]) %p一个数 x 在模 p 的条件下不一定有逆元, x 关于 p 的逆元存在 当且仅当 x 和 p 互质这里有一个推导: (设 a 为 x 的逆元, b为任意整数)求法一:基于费马小定理的快速幂这是费马小定理的原始状态: ap≡a(mod p) a^p ≡ a (mod~ p)ap≡a(mod p...
2019-09-24 19:59:01 551
原创 P3178 [HAOI2015]树上操作-树链剖分
有一棵点数为 N 的树,以点 1 为根,且树点有权。然后有 M 个操作,分为三种:操作 1 :把某个节点 x 的点权增加 a 。操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。操作 3 :询问某个节点 x 到根的路径中所有点的点权和。这个题比较简单,操作3的根是固定的容易写错的地方,一个是树上的点x,要在线段树里一定是dfn[x]#include<iostr...
2019-08-10 19:32:12 136
原创 期望与概率dp
概率概率加法互不相交的事件,P(A或B发生)=P(A)+P(B)如果A和B所涵盖的结果有交集,那么P(A或B发生)=P(A)+P(B)-P(A与B同时发生)概率乘法在两个 互不干扰的事中,事件A在其中一件事中,事件B在另外一件事中那么P(A与B同时发生)=P(A)P(B)e.g. 掷两个骰子,P(第一个点数小于3且第二个点数为偶数)=(2/6)(3/6)=1/6期望事件A...
2019-08-09 22:09:37 750
原创 luogu1020导弹拦截LIS模版(lower_bound用法)
最长上升子序列LIS-导弹拦截lower_bound&&upper_bound用法
2019-07-19 19:29:20 313
原创 Luogu P2812 校园网络(强连通分量)
Luogu P2812 校园网络几所不同的学校希望在一个有向图网络上共享一个软件,共有n所学校(n<=10000)已知他们实现设计好的网络共m条线路,为了保证高速,网络是单向的。现在请你告诉他们至少选几所学校作为共享软件的母机,能使每所学校都可以用上。再告诉他们至少要添加几条线路能使任意一所学校作为母机都可以使别的学校使用上软件。思路第一问就是跑tarjan,然后答案就是强连通分...
2019-07-18 14:46:57 136
原创 分治学习笔记&P1228
基本思想example归并排序https://www.cnblogs.com/orion7/p/8242774.html快速幂int ksm(int x,int y,int p){ int ret=1; while(y) { if(y&1) ret=(ret*x)%p; x=x*x%p;y=y>>1; } return ret;}例题...
2019-07-16 13:04:53 112
转载 7.15清北模拟赛T1jump搜索&&数学
思路可以进行广搜或dp正解:考虑:若x = 1 + 2 + 。。。 + n,则n一定是最优解我们不妨设一开始全部都是往右跳,考虑现在1+2+。。。+i的和为sum,若sum < x肯定需要继续加,若sum = x 则当前i是答案若sum > x,则若(sum – x) % 2 = =0,则当前i是答案,否则再继续加i,直到(sum – x) % 2 = = 0(...
2019-07-15 19:43:12 103
原创 luogu2217分割矩阵:记忆化搜索
传送门https://www.luogu.org/problemnew/show/P2217思路本质上就是dp,也可以说是记忆化搜索设计状态f[a][b][c][d][t] 表示以(a,c)为起点(b,d)为终点的矩阵分t次的最小(xi-ave)^2转移就是枚举当前矩阵内可以分割的线,枚举分给左后两边分割的次数代码#include<iostream>#inclu...
2019-07-15 18:54:54 126
原创 tarjan(有向图&点双&边双)
强连通分量(有向图)求法:tarjan例题https://www.luogu.org/problemnew/show/P2863https://www.luogu.org/problemnew/show/P2341Description我们已知n对夫妻的婚姻状况,称第i对夫妻的男方为Bi,女方为Gi。若某男Bi与某女Gj曾经交往过(无论是大学,高中,亦或是幼儿园阶段,i≠j),则当某...
2019-01-31 20:59:41 374
原创 IOI2011-Race -点分治
https://www.luogu.org/problemnew/show/P4149思路点分治的calc函数有两种形式:一种是把先算整个树的贡献,再减去每个子树内不合法的。我们发现这类问题都有可减性(求和),可以容斥来解;第二种无法容斥是就是一个一个子树的计算,计算完一个子树之后,再用他来更新。此题为第二类。对于一个分治重心u,我们顺序计算每一个子树的贡献,记录d[i]为之前子树到u的长...
2019-01-28 17:12:28 145
原创 聪聪可可-点分治P2634
https://www.luogu.org/problemnew/show/P2634思路点分治考虑solve,发现我们可以记录一个cnt[0],cnt[1],cnt[2],分别代表经过根的dis值%3余0、1、2。那么对答案的贡献就是cnt[0]^2+2(1->2,2->1算两个)*cnt[1]*cnt[2]。code#include<iostream>#...
2019-01-28 15:18:02 128
原创 点分治模板
https://www.luogu.org/problemnew/show/P3806点分治点分治的分治中心是重心,所以先要会找重心找重心void getroot(int u,int fa){ sim[u]=1;mxson[u]=0; for(int i=head[u];i;i=edge[i].nxt) { int v=edge[i].v; int w=edge[i]....
2019-01-28 13:12:43 206
原创 NOIP2018 DAY1
T12013年原题,考场上用了10min,100就是单调上升区间的最大值减最小值,第一个单调上升区间例外,他的贡献是最大值#include<iostream>#include<algorithm>#include<cstdio>#include<cstring>#include<cstdlib>#include<...
2019-01-28 13:06:13 215
原创 poj2570
http://poj.org/problem?id=2570思路最大环上字段和=max(序列最大字段和,sum-序列最小字段和)code#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const i...
2019-01-27 21:00:00 135
原创 hdu2665-主席树
题目大意静态区间第 k 小数给定一个长度为 n 的序列 A,你需要回答 q 次询问。每次询问给定l; r; k,你需要回答 A 序列 [l; r] 区间内第 k 小的数字。n; q ≤ 105; 1 ≤ k ≤ r − l + 1; 1 ≤ l ≤ r ≤ n; jAij ≤ 109思路我们对于每个前缀 i,求出包含 A1; A2; ; Ai 所有元素的权值线段树。询问时只需要在...
2019-01-27 18:45:20 181
原创 luogu1983_车站分级_图论
solution#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<queue>#include<cmath>#include<cstdlib>#include<ctime&
2018-11-08 18:13:11 86
原创 luogu1220_区间dp
solution显然这是个区间dp状态:f[i][j][0]和f[i][j][1]表示把i到j这个连续区间的灯关掉,0表示关完之后在i,1表示关完之后在j转移:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<q...
2018-11-07 22:33:39 102
原创 数位dp模板+总结
1.不要62和42.包含13且被13整除3.windy数(前导零)4.P4124 [CQOI2016]手机号码5.P4317 花神的数论题6. 数字统计
2018-11-07 19:48:34 131
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人