摘要: 高斯消元 #include <iostream> #include <cstdio> #include <cstring> #include <cmath> using namespace std; const int eps=1e-8; const int N=15; double a[N][N] 阅读全文
posted @ 2022-02-09 21:25 __iostream 阅读(29) 评论(0) 推荐(0)
摘要: 区间dp: 将l~r的区间进行合并 通过枚举分界点来转移状态 环形问题: 断环城链 复制后接起来 之后重点在于只枚举长度为n的区间即可 #include <iostream> #include <cstdio> #include <cstring> const int N=105; const in 阅读全文
posted @ 2022-02-09 17:56 __iostream 阅读(190) 评论(0) 推荐(0)
摘要: 给定一颗树形的网络 叶子结点为汇点 根节点为源点 求最大流量 换根dp: 适用于对于每一个点都要作为根进行一遍dp的题目 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <c 阅读全文
posted @ 2022-02-09 17:44 __iostream 阅读(33) 评论(0) 推荐(0)
摘要: 当一个背包有两个维度的价值的时候 可以考虑把价值压到状态里 这道题记录绝对值的话没有办法唯一确定价值 所以要记录差值 为了保证数组下标始终为正 所以我们要加上偏移量 在记录路径的时候 G不能够省去第一维度了 否则的话记录的只是最后一层从哪里来 就会出错 G只是纯粹的记录从哪里来 不存在递推的关系 # 阅读全文
posted @ 2022-02-09 16:32 __iostream 阅读(77) 评论(0) 推荐(0)
摘要: 树上背包问题 每一个子树就是一组背包 由于最后选根节点 因此根节点可以看做是必须选的一组 才有了后面的递推 void dfs(int x,int fa) { f[x][0]=0; for(int i=head[x];i;i=e[i].next) { int y=e[i].to; if(y==fa) 阅读全文
posted @ 2022-02-09 11:21 __iostream 阅读(35) 评论(0) 推荐(0)
摘要: 每个物品只有一个: 0/1背包 \(f[i][j]=max\{ f[i-1][j],f[i-1][j-V_i]+W_i \}\) 有n个数 构成整数m的方案数 \(f[i][j]=f[i-1][j]+f[i-1][j-a_i]\) 每个物品有无限个: 完全背包 \(f[i][j]=max\{ f[i 阅读全文
posted @ 2022-02-09 11:19 __iostream 阅读(41) 评论(0) 推荐(0)
摘要: 每个孩子有一个贪婪度,第 i 个孩子的贪婪度为 g[i]。 如果有 a[i] 个孩子拿到的饼干数比第 i 个孩子多,那么第 i 个孩子会产生 g[i]×a[i] 的怨气。 给定 N、M 和序列 g,圣诞老人请你帮他安排一种分配方式,使得每个孩子至少分到一块饼干,并且所有孩子的怨气总和最小。 注意到怨 阅读全文
posted @ 2022-02-09 10:55 __iostream 阅读(58) 评论(0) 推荐(0)
摘要: 给定一个矩阵 求大小为k的凸多边形的权值最大值 轮廓线dp 思路很好想 但是细节很多 //错误点1: 为了保证必须有交集,q不应该从p+1开始枚举 而应该从l开始枚举 //错误点2: 左右边界相等的时候不是空集 而是大小为1的集合 枚举的时候要注意 //错误点3: 目标不一定是从第一行~第n行都占着 阅读全文
posted @ 2022-02-08 17:07 __iostream 阅读(65) 评论(0) 推荐(0)
摘要: 有三个人,最初在位置1,2,3 给n个请求,每次要派出一个人到指定的位置去 并且有一定的花费,求花费最小值 如果我们记录三个人的位置的话,会发现: 当前一定有一个人在指定位置,一定会有一个人在上一个指定的位置 又由于我们不关心具体哪一个人在哪一个位置 因此我们只需要记录不在指定位置的两个人就可以描述 阅读全文
posted @ 2022-02-08 16:33 __iostream 阅读(719) 评论(0) 推荐(0)
摘要: 给定序列A 构造序列非严格单调的B 使$\sum|a_i-b_i|$最小 搜索->dp 关键在引理: b中的数一定在a中都出现过 所以可以离散化考虑 只考虑出现过的数 #include <iostream> #include <cstdio> #include <cstring> #include 阅读全文
posted @ 2022-02-08 14:01 __iostream 阅读(40) 评论(0) 推荐(0)