蒟蒻 lxw的博客

学习使我快乐(大雾)

A+B>=K(?????)

A 的取值范围[l1,r1], B 的取值范围[l2,r2]。 问有多少种取值方案满足A+B>=K。 时间复杂度O(1) 用对拍稍微验证了一下代码的正确性 ll nb(ll l1,ll r1,ll l2,ll r2,ll k) { ll ans=0; ll...

2019-08-22 08:34:16

阅读数 10

评论数 0

Make Rounddog Happy【序列分治+DP】

DP维护从某点 往后/往前 遇到的第一对非法点对。 然后分治计数,合并的时候根据最大值是 由左区间贡献还是右区间贡献 来进行分类,注意去重。 可以枚举左/右区间端点,这样即能固定最大值也能固定剩余区间的长度。 复杂度O(NlogN) #include <bits/stdc+...

2019-08-22 08:13:30

阅读数 9

评论数 0

Rikka with Travels【换根树dp】

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6686 不写题解了,写不动 还有其他简单的做法 #include <bits/stdc++.h> #define rep(i, a, b) for(int i = (...

2019-08-20 08:59:15

阅读数 65

评论数 2

Coprimes(从 i 位置往后第一个与其互质的数的位置)

bitset维护每个质因子出现的位置 从后往前跑,每次找到一个位置使该数的所有质因子都没有出现过。 把该数的所有质因子的bitset或起来,然后找从当前位置往后的第一个0位置。 取反后用bitset的_Find_first函数可以解决。 #include <bits/s...

2019-08-19 10:47:52

阅读数 21

评论数 0

Floyd求最小环模板

int val[maxn + 1][maxn + 1]; // 原图的邻接矩阵 inline int floyd(const int &n) { static int dis[maxn + 1][maxn + 1]; // 最短路矩阵 for (int i = 1; i...

2019-08-19 08:48:50

阅读数 17

评论数 0

最长道路tree【点分治】

题目链接:https://ruanx.pw/bzojch/p/2870.html?tdsourcetag=s_pcqq_aiomsg 用map记录子树中每个最小路径长度的最大边长,定义map从大到小排序,然后用双指针的方法进行路径合并。 #include <bits/stdc+...

2019-08-17 08:44:14

阅读数 11

评论数 0

聪聪可可【点分治】

模板题 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=2152 求长度为3的倍数的路径条数 #include <bits/stdc++.h> #include <ext/pb_ds/as...

2019-08-16 21:01:17

阅读数 7

评论数 0

[Jsoi2009]有趣的游戏【概率DP】【AC自动机+高斯消元】

题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1444 首先构建AC自动机。 然后问题就变成了经典问题: 给一个有环图,0号点为起点,每条边有一定的概率去走,有若干个终点,到达终点后必须停止,问经过某一点的概率是多少。 然后就可...

2019-08-16 15:04:41

阅读数 9

评论数 0

圆桌问题【网络流24题】

题目链接:https://www.luogu.org/problem/P3254 二分图最大流 然后看一下残留网络就行了 #include <bits/stdc++.h> #define rep(i, a, b) for(int i = (a); i &...

2019-08-16 10:09:57

阅读数 13

评论数 0

数字梯形问题【网络流24题】【费用流】

题目链接:https://www.luogu.org/problem/P4013 对于第一问 把一个点拆成入点和出点,从入点到出点连一条容量1,费用0的边,表示每个点最多只能经过一次。 从S连向第一层的各点的入点,容量1,费用为负的点权。 从最后一层点的出点连向T,容量1,费用0。 从各...

2019-08-16 09:31:02

阅读数 21

评论数 0

Acesrc and Travel【换根树dp】

考虑固定根(起点)情况下的最优解,可以用dp容易求出。 考虑换根操作,假设当前根为u,需要换成v。(v是以1为根情况下u的子节点) 那么需要保证v->u后,u不能再返回v,所以需要记录最优值和次优值。 当发现u的最优值不经过v,用最优值对v进行转移,否则用次优值进行转移。 基...

2019-08-15 10:05:37

阅读数 21

评论数 0

菜菜种菜 Comet OJ - Contest #8

题目链接:https://cometoj.com/contest/58/problem/D?problem_id=2758 对于第i个点,记录他左右距离最近的直接到达点的编号,分别为le[i]和ri[i]。 当且仅当询问区间[L,R] ,满足 L<=i&&...

2019-08-10 09:47:28

阅读数 20

评论数 0

You Are Given Some Strings...【AC自动机】

题目链接:http://codeforces.com/contest/1202/problem/E 枚举文本串的每个位置,计算以该位置为结尾可以匹配多少个模式串,再计算以下一位置为起点能匹配多少模式串,相乘累加作为答案。 #include <bits/stdc++.h&...

2019-08-10 08:25:15

阅读数 16

评论数 0

负载平衡问题【网络流24题】【流量平衡】

题目链接:https://www.luogu.org/problem/P4016 首先,每个点最终都会变成平均值。计原值为s[i],平均值为aver。 那么计算一下每个点与平均值的差,如果差为正,说明这个点有一些多余的货物可以给相邻的点,我们称这样的点为“小源点”。 但是这样的点很多,在网络...

2019-08-06 21:19:21

阅读数 17

评论数 0

运输问题【网络流24题】

题目链接:https://www.luogu.org/problem/P4015 最小/最大费用模板题 // luogu-judger-enable-o2 #include <bits/stdc++.h> #define rep(i, a, b) for(int ...

2019-08-06 17:01:33

阅读数 16

评论数 0

骑士共存问题【网络流24题】

题目链接:https://www.luogu.org/problem/P3355 首先,攻击关系不会出现奇环,所以可以对棋盘进行二分染色。 然后就和方格取数那个题一样了。 S连每个黑,边权为1. 每个黑连其能攻击的点,边权为inf。 每个白连T,边权为1。 #include &...

2019-08-06 16:39:04

阅读数 15

评论数 0

分配问题【网络流24题】

题目链接:https://www.luogu.org/problem/P4014 沙雕题,建图很简单。 跑一遍最小费用,再把边权取反重跑一遍最小费用。 #include <bits/stdc++.h> #define rep(i, a, b) for(int ...

2019-08-06 15:16:49

阅读数 13

评论数 0

方格取数问题【网络流24题】

题目链接:https://www.luogu.org/problem/P2774 最小割建图。 先对格子分为黑白格,类似国际象棋。 然后S连黑,边权为黑点点权。 每个黑连周围4个白,边权为inf。 每个白连T,边权为白点点权。 #include <bits/stdc...

2019-08-06 14:44:28

阅读数 14

评论数 0

K-Inversions【FFT】

题目链接:https://vjudge.net/problem/Gym-101002E #include <bits/stdc++.h> using namespace std; const double PI = acos(-1.0); struct Comple...

2019-08-03 09:28:55

阅读数 11

评论数 0

[HNOI2013]游走 【概率dp+高斯消元】

题目链接:https://www.luogu.org/problem/P3232 参考题解:http://old.orzsiyuan.com/articles/problem-HNOI-2013-Walk/ 首先考虑求每条边的经过次数的期望,给期望经过次数多的边分配小编号。 边的期望经过次数...

2019-08-01 21:23:30

阅读数 13

评论数 0

提示
确定要删除当前文章?
取消 删除