摘要:        
裸的树链剖分+线段树 但是要注意一个地方……我WA了好几次才发现取完相反数之后max值和min值是要交换的…… cpp include include using namespace std; const int N=200005; int n,m,h[N],cnt,de[N],va[N],fa[N    阅读全文
posted @ 2018-09-10 21:59
lokiii
阅读(188)
评论(0)
推荐(0)
        
            
        
        
摘要:        
比较基础的数位dp,dfs的时候带上上一位,上上位,是否已经有连续3个相同位,是否有4,是否有8即可 但是要注意两点(在洛谷上一直70) 当l=1e10的时候,直接输出clc(r)即可,因为如果再减去clc(l 1)的话,是会多减掉1的 还有判断前导0 cpp include include usi    阅读全文
posted @ 2018-09-10 19:22
lokiii
阅读(173)
评论(0)
推荐(0)
        
            
        
        
摘要:        
emmm妹想到要倒着推 先假设只在n建一个控制站,这样的费用是\\( \sum_{i=1}^{n} b[i]\ (n i) \\)的 然后设f[i]为在i到n键控制站,并且i一定建一个,能最多节省下的费用,那么显然转移是\\( f[i]=max(f[j]+s[i]\ (j i) a[i]) \\),    阅读全文
posted @ 2018-09-10 16:13
lokiii
阅读(199)
评论(0)
推荐(0)
        
            
        
        
摘要:        
设f[i]为杀死i的最小代价,显然\\( f[i]=min(k[i],s[i]+\sum f[to]) \\) 但是这个东西有后效性,所以我们使用spfa来做,具体就是每更新一个f[i],就把能被它更新的点重新入队 cpp include include include include using     阅读全文
posted @ 2018-09-10 08:23
lokiii
阅读(153)
评论(0)
推荐(0)
        
            
        
        
摘要:        
参考了这个http://www.cnblogs.com/Artanis/p/3751644.html,好像比一般方法好写 大概思想就是先计算出把所有石子都合并到1位置的代价,这样显然有一些是不优的,然后再分别计算把合并到1的石子合并到p,能优化多少 这个计算就是枚举2到tot位,对于每一位计算挪到这    阅读全文
posted @ 2018-09-10 07:41
lokiii
阅读(136)
评论(0)
推荐(0)
        
 
                    
                     
                    
                 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号