随笔分类 - OI
摘要:问题描述 "LG SP2713" 题解 分块,区间开根。 如果一块的最大值是 $1$ ,那么这个块就不用开根了。 如果最大值不是 $1$ ,直接暴力开就好了。 $\mathrm{Code}$ cpp include using namespace std; define int long long
阅读全文
摘要:问题描述 [LG-SP1716](https://www.luogu.org/problem/SP1716] 题解 GSS 系列的第三题,在第一题的基础上带单点修改。 第一题题解传送门 在第一题的基础上,增加一个单点修改就完事了。 $\mathrm #include<bits/stdc++.h> u
阅读全文
摘要:问题描述 "LG SP1043" 题解 系列第一题。 $q$ 个询问,求 $[x,y]$ 的最大字段和。 线段树,维护 $[x,y]$ 的 $lmax,rmax,sum,val$ ,向上合并即可。 但是注意询问过程中也需要维护这些信息。 $\mathrm{Code}$ cpp include usi
阅读全文
摘要:这场怎么全是数据结构题...
阅读全文
摘要:花了 $50min$ 打了 $130$ 分的暴力... T2想到正解之后开始 VP CF了。。。
阅读全文
摘要:菜是原罪。 英语不好更是原罪。 $\mathrm{A Grid game}$ 题解 $4 \times 4$ 的格子,两种放法。 发现这两种在一起时候很讨厌,于是强行拆分这个格子 上面 $2 \times 4$ 给横的,下面给竖的。 $\mathrm{Code}$ $\mathrm{C Johnny
阅读全文
摘要:花了 $30min$ 打了 $180$ 分的暴力... 仓鼠的石子游戏 问题描述 链接:https://ac.nowcoder.com/acm/contest/1100/A 仓鼠和兔子被禁止玩电脑,无聊的他们跑到一块空地上,空地上有许多小石子。兔子捡了很多石子,然后将石子摆成n个圈,每个圈由a[i]
阅读全文
摘要:问题描述 "UVA11464" 题解 第一直觉爆搜。 发现 $N \le 15$ ,然后后面每行都可以通过第一行递推出来。 爆搜第一行,递推后面+check $\mathrm{Code}$ cpp include using namespace std; template void read(Tp
阅读全文
摘要:问题描述 "LG2921" 题解 发现一共有 $n$ 个点,每个点只有一条出边,即只有 $n$ 条边,于是就是一个内向基环树。 $\mathrm{Tarjan}$ 缩点。 但是这个题比较猥琐的就是有自环。 所以断定一个强联通分量 $i$ 是环的条件是 $size_i 1$ 。 然后记搜求答案,特判自
阅读全文
摘要:问题描述 "LG1505" 题解 边化点权。 超级多操作的树剖板子... 以后就拿这个当树剖板子复习吧... $\mathrm{Code}$ cpp include using namespace std; template void read(Tp &x){ x=0;char ch=1;int f
阅读全文
摘要:问题描述 "LG3119" 题解 显然,如果有个环,一定是全部走完的。 所以缩点,缩出一个 $\mathrm{DAG}$ 。 只能走一次反向,于是在正图和反图上各跑一次,枚举边,取 $\mathrm{max}$ 即可。 $\mathrm{Code}$ cpp include using namesp
阅读全文
摘要:问题描述 "LG4377" 题解 有 $n$ 个物品,每个物品有两个权值 $a,b$ 需要确定一组 $w_i \in [0,1]$ ,使得 $\frac{\sum{w_i \times a_i}}{\sum{w_i \times b_i}}$ 最大。 要求 $\sum{w_i \times b_i
阅读全文
摘要:问题描述 "LG4377" 题解 有 $n$ 个物品,每个物品有两个权值 $a,b$ 需要确定一组 $w_i \in [0,1]$ ,使得 $\frac{\sum{w_i \times a_i}}{\sum{w_i \times b_i}}$ 最大。 要求 $\sum{w_i \times b_i
阅读全文
摘要:问题描述 "LG4377" 题解 有 $n$ 个物品,每个物品有两个权值 $a,b$ 需要确定一组 $w_i \in [0,1]$ ,使得 $\frac{\sum{w_i \times a_i}}{\sum{w_i \times b_i}}$ 最大。 要求 $\sum{w_i \times b_i
阅读全文
摘要:问题描述 "LG4111" 题解 矩阵树定理板子题。 $\mathrm{Code}$ cpp include using namespace std; define int long long template void read(Tp &x){ x=0;char ch=1;int fh; whil
阅读全文
摘要:问题描述 "LG5104" 题解 观察发现,对于 $w$ ,期望得钱是 $\frac{w}{2}$ 。 然后答案就是 $\frac{w}{2^k}$ 。 然后快速幂求个逆元就好了。 $\mathrm{Code}$
阅读全文
摘要:问题描述 "LG2375" "LOJ2246" 题解 看了题解,需要回看,需要继续通过本题深入理解KMP。 为了将 $\mathrm{KMP}$ 和只插入了一个模式串的$\mathrm{AC}$自动机有机统一,称通常意义下的 $\mathrm{KMP}$ 的 $\mathrm{next}$ 数组为
阅读全文
摘要:问题描述 "LG4824" 题解 大概需要回顾(看了题解) KMP 先对要删除的 模式串 进行自我匹配,求出 $\mathrm{fail}$ 然后再扫 文本串 的过程中记录一下每个字符匹配的最大长度,用栈进行删除。 这类删除一段连续区间的问题常用栈来优化维护 $\mathrm{Code}$
阅读全文
摘要:综述 第一次 ,激动。 题目是 的三至五题。 得分 $100+100+20$ $\mathrm{cipele}$ 问题描述 "HZOJ1313" 题解 二分答案+贪心 发现“最大值最小”,自然想到二分答案。 对 $a,b$ 排序,通过一些操作保证 $a$ 比 $b$ 短。 如果 $b_j$ 不能被
阅读全文
摘要:问题描述 "LG5357" 题解 不是 的`AC自动机`复杂度是假的。 把 搞出来,建立 ,树上爆搜一遍就好了。 $\mathrm{Code}$ cpp include using namespace std; template void read(Tp &x){ x=0;char ch=1;int
阅读全文