随笔分类 - 动态规划-递推/计数
摘要:"https://www.hackerrank.com/contests/w31/challenges/colliding circles/problem" 设E(n)为序列长度为n时的期望值。 $$ \begin{aligned} E(n 1)=&E(n)+\frac1{n\choose2}\su
阅读全文
摘要:"http://uoj.ac/problem/204" 肯定要离散化的,先离散化出$O(n)$个取值区间。 设$f(i,j)$表示第$i$所学校派出的划艇数量在$j$区间中。 $f(i,j)=\sum\limits_{k=0}^{i 1}\left(\sum\limits_{t=1}^{j 1}f(
阅读全文
摘要:"http://uoj.ac/problem/110" 这道题subtask4和subtask5是不同的算法。 主要思想都是从高位到低位贪心确定答案。 对于subtask4,n比较小,设$f(i,j)$表示前$i$个雕塑分成$j$组能否满足当前答案,最后检查$f(n,A\sim B)$是否有值为tr
阅读全文
摘要:"http://www.51nod.com/onlineJudge/questionCode.html !problemId=1815" tarjan缩点后在DAG上递推即可。 每个点维护所有根到它的路径上的值的最大值,严格次大值,最大的“根到这个点的一条路径中的严格次大值”(也就是答案)。 注意所
阅读全文
摘要:"http://uoj.ac/problem/107" 设$f(l,r,i,j)$表示$[l,r]$中的机器人聚集到$(i,j)$需要花的最小操作数。 $f(l,r,i,j)=\min\left\{\begin{array}{rcl} f(l,k,i,j)+f(k+1,r,i,j)\\ f(l,r,
阅读全文
摘要:Day 1 T1 数字表格 题目大意 · 求$\prod\limits_{i=1}^n\prod\limits_{j=1}^mFibonacci(\gcd(i,j))$,$T\leq1000$,$n,m\leq10^6$ 思路 · 一言不合化式子(不失一般性地假设$n include include
阅读全文
摘要:"http://www.lydsy.com/JudgeOnline/problem.php?id=2121" dp,设$f(i,j,k,l)$表示原串i到j这个子串能否被删成第k个串的长度为l的前缀。 再设$can(i,j)$表示原串i到j这个子串能否被删成空串,用can这个状态来加速f的转移即可。
阅读全文
摘要:"http://acm.hdu.edu.cn/showproblem.php?pid=5730" 分治FFT模板。 DP:$f(i)=\sum\limits_{j=0}^{i 1}f(j)\times a(i j)$ 递推第i位时要用到0到i 1位,cdq套FFT,考虑每一位上f的贡献即可。 时间复
阅读全文
摘要:"http://www.lydsy.com/JudgeOnline/problem.php?id=1004" 注意数据给出的m是一个没有单位元的置换群! 用Burnside引理,然后对每个置换群dp一下就可以了。 c++ include include include include using n
阅读全文
摘要:"http://uoj.ac/problem/279" 先判断答案为0的情况,$d(i,i)\neq 0$,$d(i,j)\neq d(j,i)$,$d(i,j) d(i,k)+d(k,j)$,$d(i,j) k$。 对于$d(i,j) 0$的情况,如果存在$k\neq i,j$且满足$d(i,j)
阅读全文
摘要:"http://www.lydsy.com/JudgeOnline/problem.php?id=4580" 区间dp,f(i,j)表示区间[i,j]全部合成一个数,这个数是多少。 可以归纳证明[i,j]如果可以合成一个数,那么只能合成这一个数 c++ include include include
阅读全文
摘要:"http://www.51nod.com/onlineJudge/questionCode.html !problemId=1501" dp求出环状不连续的前缀和,剩下东西都可以算出来,比较繁琐。 时间复杂度$O(n+m)$。 c++ include include include using n
阅读全文
摘要:"http://poj.org/problem?id=1390" 黑书上的例题,感觉我这辈子是想不到这样的dp了QAQ $f(i,j,k)$表示将$i$到$j$合并,并且假设未来会有$k$个与$a_j$同色的方块与$j$相连的最大得分。 如果直接消去第$j$个区域和未来会接到$j$后面的$k$块,那
阅读全文
摘要:"http://uoj.ac/contest/35/problem/246" 神奇!我这辈子是想不出这样的算法了。 对区间长度分类讨论: "题解很好的~" 我已经弱到爆了,看完题解后还想了一晚上。 题解中“利用$r_y$进行计算更新答案”的具体方法是记录以当前点为右端点,任意两个数的差值的最小值大于
阅读全文
摘要:"http://uoj.ac/contest/35/problem/244" 对其他人来说好简单的一道题,我当时却不会做TWT 注定滚粗啊 "题解很好的~" c++ include include include using namespace std; typedef long long ll;
阅读全文
摘要:"http://noi.openjudge.cn/ch0405/191/" "http://poj.org/problem?id=1189" 一开始忘了$2^{50}$没超long long差点写高精度QvQ 很基础的dp,我先假设有$2^n$个球,分开时就分一半,这样每次都能除开。
阅读全文
摘要:http://codevs.cn/problem/3289/ dp转移,树状数组维护前缀max和后缀max进行优化,$O(nlogn)$。 QwQ
阅读全文
摘要:http://uoj.ac/problem/17 dp,注意细节。 QwQ
阅读全文
摘要:http://uoj.ac/submission/93769 设$f(i,j,k)$表示用了A的前i个字符,分k段构成B的前j个字符的方案数。 $$f(i,j,k)=f(i-1,j,k)+\sum_l f(i-l,j-l,k-1)$$ $$\sum_l f(i-l,j-l,k-1)=sum(i,j,
阅读全文
posted @ 2016-08-24 15:35
abclzr
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=4455 http://uoj.ac/problem/185 有一个$O(n^n)$的暴力,放宽限制可以转化成$O(2^n)$的容斥,容斥每一层统计用$O(n^3)$的dp来统计。时间复杂度$O(n^3
阅读全文