摘要:
五一集训笔记整理 0x01 DP-zky 换根DP e.g. 给出一棵有n个点的树,求每个点到其他点之间的距离 把以一个点作为根节点的情况转移到另外的点作为根节点的情况 状压DP 有题 环形后效性处理 1.断环为链:记录或枚举第一个位置选择情况、复制一倍 2.整体处理 特殊讨论:tarjan、圆方树 阅读全文
摘要:
#include<iostream> #include<cstdio> #include<algorithm> #include<string> #include<cmath> #include<vector> #include<map> #include<queue> #include<deque 阅读全文
摘要:
#include<iostream> #include<cstdio> #include<algorithm> #include<string> #include<cmath> #include<vector> #include<map> #include<queue> #include<deque 阅读全文
摘要:
struct seg_T{ int t[N],sz; inline void pushup(int x){ t[x]=t[x<<1]+t[x<<1|1]; } void change(int x,int l,int r,int val,int s){//加数修改都用ta int mid=(l+r)> 阅读全文
摘要:
P2679 [NOIP2015 提高组] 子串 0x01 题意 给出字符串A和B,在A中取$k$个不重叠的子串,按原来的顺序排列后与B相同,求方案数 0x02 解 DP 设$f[i][j][p]$为A字符串匹配到$i$,B字符串匹配到$j$时,取$p$个子串且$A_i$为最后一位匹配成功的方案数,很 阅读全文
摘要:
P3747 [六省联考 2017] 相逢是问候 问候出题人母亲 0x01 题意 给定一个长为$n$的序列,支持两个操作($%p$意义下): 区间修改(将该数修改为某数的该数次幂) 区间求和 0x02 解 看见区间求和就是线段树 区间修改应该和数学有关 求幂的话可以用欧拉定理 然后这个题应该就做完了 阅读全文
摘要:
P2822 [NOIP2016 提高组] 组合数问题 0x01 题意 给定$n,m$和$k$,对于所有的$0\le i\le n,0\le j\le min(i,m)\(有多少对\)(i,j)$满足$k|\tbinom$。 $1$个$k$,多组$n$,\(m\) 0x02 解 预处理出来杨辉三角,因 阅读全文
摘要:
P2331 [SCOI2005]最大子矩阵 0x01 题意 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大。注意:选出的k个子矩阵不能相互重叠。 其中$1\le n\le 100,1\le m\le 2,1\le k\le 10.$ 0x02 解 $m$只有$1$和$ 阅读全文
摘要:
P1854 花店橱窗布置 0x01 题意 给一个$m\times n$的矩阵,\(m\leq n\),在每一行选一个数,满足每一行选择数的位置在上一行选择数位置的后面,求所有选择的数的和的最大值和每一行选择的数的位置 0x02 解 数据不大 搞式子 \[ dp[i][j]=max(dp[i-1][k 阅读全文
摘要:
P5888 传球游戏 0x01 题意 有一个$n$个点的完全图,删掉其中的$k$条边,求从$1$开始走$m$条边所有可能的路径数。 0x02 解 做矩阵做迷了,这$10^9$的数据矩阵搞不定 所以这是道DP题 简单的推了推公式: \[ dp[i][j]=\sum_{k→j} dp[i-1][k] \ 阅读全文