随笔分类 - DP
摘要:题目大意 2=ans就剪掉 这样就~~卡过去了~~ code
阅读全文
摘要:题目大意 有1\~n共n个数,每次删掉x并把x 2和x+K加上,问可能的序列个数 n define fo(a,b,c) for (a=b; a=c; a ) define add(a,b) a=((a)+(b))%mod define ll long long // define file usin
阅读全文
摘要:题目大意 题解 秒了,~~然后因为没开ll调了一个上午顺便叉掉了两份标~~ 把每个点看做(s到其的最短路,t到其的最短路),等同于在坐标系上有一些点,每次把xy轴向上移,贡献为新扫到的点 离散化,设f\[i]\[j]表示先手扫到i,后手扫到j之后的最大差值,设g表示最小差值 然后用前缀和转移一下即可
阅读全文
摘要:题目大意 题解 链或环,破环成链 随便dp,注意重边 code
阅读全文
该文被密码保护。
摘要:题目描述 题解 首先写一个O(n\^5)的dp ~~然后优化到O(n)~~ 设f\[i,j1,j2,k1,k2]表示从后往前做到i,其中以白色开头的路径条数%2为01的个数j1j2,k1k2同理 然后可以发现一个点路径条数=1 (连向不同颜色的条数为1的个数%2) 同颜色以及0的不会影响,不同颜色的
阅读全文
摘要:题目描述 armer John 有一块小的田地,形状为一个 N 行 N 列的一个方阵(1≤N≤2000),对于所有的 1≤i,j≤N,从上往下的第 i 行的从左往右第 j 个方格记为 (i,j)。他有兴趣在他的田地里种植甜玉米和苜蓿。为此,他需要安装一些特殊的洒水器。 在方格 (I,J) 中的甜玉米
阅读全文
摘要:题目描述 题解 第一次写动态dp,就是把转移变成矩阵然后用数据结构维护 把式子变成树的形式,等于从下往上每次合并儿子 树剖,叶子直接维护概率,非叶子(操作符)维护 重儿子是多少时的01变化 儿子只有两个,转移矩阵取决于自己以及轻儿子 这样的好处是每次修改只用修改向上的链顶父亲的矩阵,修改量是O(lo
阅读全文
摘要:T1 交换00和11没用,所以只会把1从一边换到另一边 T2 分层状压,合法状态132种,转移分别是2千和1千 T3 欧拉公式:V+R=E+2,R是连通块数(包括最外面的无穷大块) 维护点、边、只有四个点的块个数
阅读全文
摘要:题目描述 题解 区间合并dp,之前做过但是忘了 两个子树合并时,一定是若干段区间交错,如果有相邻两段来自不同子树的区间就可以合并,此时的深度贡献为d\[t] 设f\[i]\[j]表示根i段j,g\[i]\[j]\[k]\[0/1]表示当前合并时剩余总段i,两个子树的段jk,结尾为什么 看似O(n^4
阅读全文
摘要:这nm是普及 T1 枚举最小值,考虑另外两个的答案 系数较大的个数每次可以减较小的系数,总数最大的话就一定在较小系数 1以内 exgcd反而麻烦 O(n),分类讨论可以O(1) T2 n^2显然,f\[i]\[j]表示有i个x总数为j 发现大于√n的不超√n个,对于小于等于√n的枚举具体数dp,大于
阅读全文

浙公网安备 33010602011771号