利用dp解决各个本质不同方案的平方和

(1 min to read)

前提:如果只是简单的求和,可以利用dp[s]来解决那么再加一维,dp[s1][s2],然后在转移的时候当且仅当下一个状态两者相同才转移,这样得到的结果就是平方和,可以发现这实际上是在对s1和s2这两种状态作匹配,如果某种状态有x个,那么这两者之间就会匹配$x^2$次同理,继续加维,可以得到更高次方和的结果