codeforces-710E-Generate a string-基础dp

题意:让你生成一个长度为n的字符串,字符串仅包含字母a,已知单独输入或删除一个字符的时间为x,复制当前串并粘贴的时间为y,现让你求最短需要多长时间才能生成

思路:最基础的dp,考虑当前字符为2k的情况,那么只有两种转移,一个是复制k长度的字符,一个是从2k-1添加。当前字符为2k+1的情况时,有三种情况,一个是从2k转移,一个是从k乘2加1转移,最后一个是从(k+1)乘2减1转移。

莫队总结

orz,自从艾教的集训回来之后就一直很颓废,迎新也差点把命给送掉了,回家之后更是颓废……不管了,先总结一下在艾教那的收获吧,这次最大的收获我觉得就是莫队算法了……

关于莫队
以前一直在听说莫队算法很神,说能处理一切区间问题,就感觉这个算法肯定很难很难,也就一直没动……结果这次听艾教讲完,发现莫队是个非常友好的算法,很简单也很好写,套个板子基本就解决了……

莫队的思想在于分块,在两个查询的区间变化不大的情况下直接继承上次查询的结果进行微调。一般将一整个大区间分为根号块,每块长度为根号,不过不同题目具体分法也不一定相同。莫队本身就是个乱搞算法,很多时候都是钻了数据的空子才能过的,所以分法也就多种多样。