11 2018 档案

摘要:不知道为什么要把这两个没什么关系的算法放到一起写...可能是都很黑科技? 1.线段树分治 例题:bzoj4026 二分图 给你一个图,资瓷加一条边,删一条边,询问当前图是不是二分图 如果用 LCT 的话我们要维护关于删除时间的最大生成树,然后每进来一条边判断奇环,就很难写 线段树分治可以很好的解决这 阅读全文
posted @ 2018-11-28 20:45 探险家Mr.H 阅读(547) 评论(0) 推荐(0)
摘要:T1 少膜一个,T3 暴力写挂 强势 rank1 -> rank2 一场比赛两道线段树分治,给力 T1 password 给你 m 个禁止字符串,求长度为 n 的所有字符串中至少包含这些禁止字符串各一次的字符串数量 $n \leq 10^9,m \leq 4,\sum len \leq 50$ so 阅读全文
posted @ 2018-11-26 20:37 探险家Mr.H 阅读(208) 评论(0) 推荐(0)
摘要:上学期没有去 GTSG,于是今天老师让我们来做一下 GTSG2018 Day1 & Day3 Day1 在上午当成一场考试来搞了,Day3 由于锅太多而且 T3 玄学而被放到下午自学... 上午 100 + 45(老师放的是后 19 组原数据和一组 hack 数据,所以只有 40,现场的话应该是 4 阅读全文
posted @ 2018-11-22 14:31 探险家Mr.H 阅读(251) 评论(0) 推荐(0)
摘要:众所周知 点分治是基本操作 ——Destinies_Gdx 点分治是处理树上路径问题的很好的方法,它可以把树变成一棵平衡的二叉树来使很多看起来是 $O(n^2)$ 的操作变成 $O(nlogn)$ 的 poj1741 Tree 给你一棵树,求长度不超过 k 的简单路径数量 sol: 点分治 每次找一 阅读全文
posted @ 2018-11-21 19:28 探险家Mr.H 阅读(287) 评论(0) 推荐(0)
摘要:来介绍一些基本操作 首先,介绍一下 Suffix Automaton 后缀自动机大概由两部分组成—— DAWG 和 Parent Tree 1.DAWG DAWG 的中文名字叫做“单词的有向无环图” 它由一个初始节点 init ,若干条转移边,若干个节点组成 DAWG 表示的是状态的转移关系,我们可 阅读全文
posted @ 2018-11-19 19:50 探险家Mr.H 阅读(534) 评论(1) 推荐(0)
摘要:上下午 6 题一起考 自闭了 T1 小明要参加一场比赛,赛制给你一个表格 $p$ ,$p_{(i,j)}$ 表示他在第 $i$ 场比赛前如果输了 $j$ 场,他这一场赢的概率,他也可以故意输掉任意多场比赛,求他 $n$ 场比赛后他的最优期望胜场 $n \leq 1000$ sol: 一道很鸡汤的题, 阅读全文
posted @ 2018-11-08 18:16 探险家Mr.H 阅读(164) 评论(0) 推荐(0)
摘要:T1 decode 解哈夫曼编码 sol: 因为哈夫曼编码的性质,我们直接暴力就可以了 #include<bits/stdc++.h> #define LL long long using namespace std; inline int read() { int x = 0,f = 1;char 阅读全文
posted @ 2018-11-07 18:21 探险家Mr.H 阅读(169) 评论(0) 推荐(1)
摘要:给一个 $n$ 个点 $m$ 条边的无向图,每条边有 $p_i$ 的概率消失,求图连通的概率 $n \leq 9$ sol: 我们考虑一个 $dp$ $f_{(i,S)}$ 表示只考虑前 $i$ 条边,当前图连通的状态为 $S$ 的概率 设这条边没有消失,图的新连通状态为 $T$ 那转移到 $T$ 阅读全文
posted @ 2018-11-06 19:23 探险家Mr.H 阅读(289) 评论(0) 推荐(0)
摘要:给一个 $n$ 个点的带权树,每次修改一个点的权值,或者询问到 $x$ 距离不超过 $k$ 的点的权值和,强制在线 sol: 套路题,首先搞出一个点分树,每个重心,以到重心的距离为下标,点权为权值建两棵线段树,一个用来统计答案,一个用来消除对父节点的影响 每次修改和讯询问都是暴力爬树高,在经过的每棵 阅读全文
posted @ 2018-11-06 10:38 探险家Mr.H 阅读(322) 评论(4) 推荐(0)
摘要:在某咕上打了一晚上的模板 感觉还好。。。 #include<bits/stdc++.h> #define LL long long using namespace std; inline int read() { int x = 0,f = 1;char ch = getchar(); for(;! 阅读全文
posted @ 2018-11-05 20:36 探险家Mr.H 阅读(214) 评论(1) 推荐(0)
摘要:T1 抓牛 你在 $n$ ,牛在 $k$,你一步可以走到 $n-1,n+1,2 \times n$,问最少几步能抓到牛 sol:dp $f_i$ 表示走到 $i$ 最少走了几步 当 $i \leq n - 1$ 时,显然 $f_i = f_{i+1} + 1$(因为只能一步一步走过去) $i$ 在 阅读全文
posted @ 2018-11-02 18:46 探险家Mr.H 阅读(219) 评论(0) 推荐(0)
摘要:一棵带边权的树,你需要把 $k$ 个点染成黑色,剩下的染成白色,你会获得黑点间两两间距离之和 + 白点间两两距离之和的收益 求收益最大值 $n \leq 5000$ sol: 树形 dp 显然一条边的贡献是 $边权 \times (左边白色 \times 右边白色 + 左边黑色 \times 右边黑 阅读全文
posted @ 2018-11-01 18:45 探险家Mr.H 阅读(167) 评论(0) 推荐(0)
摘要:老师让出互测比赛,找了几个原题和自己以前搞的东西改了改就搞上去了,毙了好几道题。。。感觉质量还可以吧 大家需要的话的可以在下面评论一下(可能不会有人会需要吧2333 比 noip 提高组难度略难,但数据有点水 欢迎大家来 AK qwq 阅读全文
posted @ 2018-11-01 18:21 探险家Mr.H 阅读(196) 评论(6) 推荐(1)
摘要:给你一个序列,一开始都是 $1$,资瓷 $3$ 种操作 1.把 $[l,r]$ 赋值为 $0$ 2.把 $[l,r]$ 中所有 $1$ 删掉,记录删掉的 $1$ 的个数,并把这些 $1$ 从左到右填到 $[a,b]$ 中的 $0$ 处,不考虑 $1$ 的剩余(剩下的相当于全扔了) 3.查询 $[l, 阅读全文
posted @ 2018-11-01 09:00 探险家Mr.H 阅读(220) 评论(0) 推荐(0)
摘要:给你一个数列,在相邻两个数之间插入加号,减号或乘号 每次支持单点修改,求所有这样可以得到的表达式之和,膜1e9 + 7 sol: 我是个 sb 。。。 可以发现,如果某位置出现了加号,后面一定有一个减号把它消掉,于是答案就是一些出现了好几次的前缀积之和 算一下每段前缀积的贡献即可 #include< 阅读全文
posted @ 2018-11-01 08:19 探险家Mr.H 阅读(356) 评论(0) 推荐(0)