摘要:
题目链接: "51nod1201" 神仙DP 设$f[i][j]$表示$i$分成$j$个数的划分数,如何转移? 有转移式:$f[i][j]=f[i j][j 1]+f[i j][j]$ 为什么呢?第一种是先加一个划分出来的数$1$,但是为了和之前的所有数不一样,之前的所有数$+1$。 第二种就是所有 阅读全文
摘要:
题目链接: "51nod1084" 题目相当于从上向下走两次,首先可以想到一个Naive的DP: 设$f[a][b][c][d]$表示一个人当前在$(a,b)$,另一个在$(c,d)$时取的最大值。 有一个显然的优化是只用保留$a+b=c+d$的状态(两人同时出发,速度相同)就可以求出答案。 那么有 阅读全文
摘要:
题目链接: "51nod1020" 首先考虑设$f[i][j]$表示$i$个数的排列有$j$对逆序对的方案数。 那么怎么求$f[i][j]$? 若有一个$1\sim n 1$的排列,那么现在插入$n$,那么$n$只会和后面的数产生逆序对(前面的一定比$n$小),也就可以比原来多产生$0\sim n 阅读全文