CF1223D】的更多相关文章

CF1223D 不需要动的一定值域连续 #include<iostream> #include<cstring> #include<cstdio> #include<algorithm> #include<queue> #define LL long long using namespace std; const int M = 310001; int n,m,k,a[M],T,L[M],R[M],l,res,s; int main() { sc…
思路: 首先把数组离散化,然后观察可以发现,在最优解中最终没有被移动过的那些数字一定是连续的,那么找到最长的连续的数字长度即可. 实现: #include <bits/stdc++.h> using namespace std; ; int a[N], l[N], r[N]; int main() { int q; cin >> q; while (q--) { int n; cin >> n; ; i < n; i++) cin >> a[i]; v…
Problem A number 使用一个$2^k$数集中每个元素的和表示数$n$,不同集合的数目有多少? 对于$100\%$的数据满足$1 \leq n \leq 10^6$ Solution : $f[i][j]$表示使用不大于$2^i$的数组成集合,构成数$j$的不同集合数目. 利用完全背包的思想,一开始$f[i+1][j] = f[i][j] + \sum_{k} f[i][j-k * 2^{i+1}]$ 显然可以通过滚动数组来优化,利用完全背包的思想,我们得到如下算法: 一开始令$f[…
CF1158C CF1163E update after CF1173 很好,我!expert!掉rating了!! 成为pupil指日可待== 下次要记得合理安排时间== ps.一道题都没写的\(asuldb\)排名比窝和慎老师还高,然后还嘲讽窝掉rating?? 他合格考稳了 CF1179D CF280C 期望 CF914D CF1041C CF1197E 码力约等于-inf CF1217D 如果\(x>y\)则标红否则标蓝毕竟一个环不可能单调不降 CF322F 拉格朗日插值 CF1215D…
DP刷题记录 (本文例题目前大多数都选自算法竞赛进阶指南) TYVJ1071 求两个序列的最长公共上升子序列 设\(f_{i,j}\)表示a中的\(1-i\)与b中色\(1-j\)匹配时所能构成的以\(b_j\)结尾的最长公共上升子序列的长度 考虑转移 \[ f_{i,j} = \left\{\begin{array}{l}{f_{i - 1,j}\quad \quad \quad \quad \quad \quad\quad(a_i \not= b_j)} \\ {\max_{k = 1}^{…