摘要:
题解: 一道转移方程挺简单的题但是后面的优化挺难的 首先很显然就是先排序然后每次都是连续一段 这样我们就可以dp了 F[i][j]=maxk<j{F[i−1][k]+S[j]−S[k]j−k+1} 前面有10^9的范围的k 这样dp显然是不行的 我们会发现,当k>n的时候,一定是每次与前一个搞一下 阅读全文
该文被密码保护。 阅读全文
摘要:
题解: 一道不错的状压dp 关键在于如何处理出初始状态 dp[i]=min(dp[j]+dp[i^j]) 初始状态可以枚举子集 然后对他们进行排序,如果相邻的小于c,就说明这个方案可行,步数就是sum-1 为什么这么做是对的,所以 我们可以对于那些需要全部交换的,答案就是sum-1 而对那些有的不需 阅读全文