摘要:
分块复杂度略微证明: $$ n:序列的长度;\ S:将这个序列分成S块;\ C:分成的每个块内有C个元素;\ x:查询或修改时,需要操作的整块数;\ y:查询或修改时,需要操作的零散区间中元素个数;\ L:查询或修改时,操作序列的长度。 \ S*C=n我们肯定要让x+y最小\ 最坏情况操作区间为[2 阅读全文
摘要:
\(\large斜率优化dp\) //P2365 #include<cstdio> #define ll long long using namespace std; ll f[5010],sumt[5010],sumc[5010]; int n,s; ll min(int a,int b){ret 阅读全文