原创 BZOJ 4358 坑 莫隊+線段樹 死T

這是一個坑 竟然卡nsqrt(n)logn T死 等更 //By SiriusRen #include <cmath> #include <cstdio> #include <algorithm> using namespace

原创 BZOJ 2821 分塊+二分

題意: N個數,M組詢問,每次問[l,r]中有多少個數出現正偶數次。 思路: 把N個數分成sqrt(n)塊,預處理d[i][j]表示第i塊起點到第j塊末尾的答案 枚舉起點i,並維護一個數組記錄每個數到目前爲止出現的次數,從

原创 BZOJ 1786 DP

思路: 肯定從小往大填合適了 f[i][j]表示第i個數是j的最少逆序對數 f[i][j]=min(f[i-1][k]+cost,f[i][j]) 優化一下成O(nk)就好啦~ (不優化也可以過的…) //By Siri

原创 BZOJ 4184 線段樹+高斯消元

思路: 線段樹表示的是時間 每回最多log個段 區間覆蓋 一直到葉子 的線性基 xor 一下 就是答案 一開始沒有思路 看了這篇題解 豁然開朗 http://www.cnblogs.com/joyouth/p/5

原创 BZOJ 3729 splay維護DFS序+博弈論

思路: 這像是 階梯Nim之類的東西 我們 直接把sg函數 設成mod(L+1)的 一棵子樹 向下的奇數層上的石子xor起來 就是答案 有加點和改值的操作 就splay維護一下 //By SiriusRen #incl

原创 Burnside&Polya總結

這裏就算是一個小總結吧… 附參考的網址: http://blog.sina.com.cn/s/blog_6a46cc3f0100s2qf.html http://www.cnblogs.com/hankers/archive

原创 BZOJ 3796 後綴數組+KMP

思路: 寫得我頭腦發矇,,, 旁邊還有倆唱歌的 抓狂 (感謝lh大爺查錯) 首先 1、w是s1的子串 2、w是s2的子串 這兩步很好辦啊~ 後綴數組一下O(n)就可以搞 重點是 這個:3、s3不是w的子串 怎

原创 BZOJ 3230 後綴數組+ST

思路: 首先我們已經會了後綴數組求本質不同的子串個數 這道題跟那個差不多 首先我們可以知道按字典序排好的每個後綴之前包含多少本質不同的字串 就是sigma(n-sa[i]+1-ht[i]+bi[i-1]) 在這上面二分就

原创 BZOJ 4522 Pollard-rho+exgcd

思路: N=P*Q 求出來P和Q 模擬就好… //By SiriusRen #include <cstdio> #include <algorithm> using namespace std; typedef long l

原创 BZOJ 3195 DP

http://www.cnblogs.com/CXCXCXC/p/5093584.html //By SiriusRen #include <cstdio> using namespace std; int n,m,K,mod=1

原创 BZOJ 2287 DP+容斥

思路: 先處理出來f[j]表示這i個物品都可用 填滿容量j的方案數 容斥一發 處理出來g[j]=g[j-w[i]] 表示i不能用的時候 填滿容量j的方案數 //By SiriusRen #include <cstdio> us

原创 BZOJ 3323 splay維護序列

就第三個操作比較新穎 轉化成 在l前插一個點 把r和r+1合併 //By SiriusRen #include <cstdio> #include <cstring> #include <algorithm> using na

原创 BZOJ 1369 樹形DP

思路: f[i][j] 表示節點i 染成j時 子樹的最小權值 (我會猜這個j很小 你打我吖~) 隨便DP一發就好了 (證明我也不會) //By SiriusRen #include <cstdio> #include <cs

原创 BZOJ 3667 Pollard-rho &Miller-Rabin

論O(1)快速乘和O(logn)快速乘的差距…. //By SiriusRen #include <cstdio> #include <algorithm> using namespace std; typedef long lo

原创 BZOJ 2120 帶修莫隊

思路: 暴力能過的 嘿嘿嘿 我是來練帶修莫隊的嗯 複雜度 O(n^5/3) //By SiriusRen #include <cmath> #include <cstdio> #include <algorithm> usin