原创 loj#2325. 「清華集訓 2017」小 Y 和恐怖的奴隸主 (矩陣快速冪優化概率dp)

吐槽請無視 哇塞我終於開始更博客了!感不感動!興不興奮!%¥#%$#@*&.... emm事實上是因爲csdn的LaTeX終於修復好了。。 ps. 之後的題解可能都會相對簡略。 並且養成標題上加算法的好習慣,, 題面在這裏

原创 loj#2324. 「清華集訓 2017」小 Y 和二叉樹(貪心+分類討論)

題面在這裏 題意: 給出一棵每個點度數不超過3的無根樹,節點編號爲11 ~nn 你需要確定根和每個節點的左右兒子,使其成爲一棵二叉樹。 問所有可得到的二叉樹中中序遍歷字典序最小的樹的中序遍歷。 n≤1,000,000n≤1,

原创 bzoj4319: cerc2008 Suffix reconstruction

題面在這裏 題意: 給出sa[]數組,求原字符串,字符都是’a’~’z’所有小寫字母。 做法: qaq此題亂入。。。 其實是個貪心,涉及到了一點點的後綴數組。 考慮兩個後綴suf(p1)suf(p1) 和suf(p2)suf(p

原创 ARC#058F Iroha Loves Strings(貪心+字符串處理+dp預處理)

題面在這裏 這題網上找不到題解啊。。於是我就自己對着某大佬的ac代碼看了inf小時後終於(假裝)懂了。。 題意 小C有NN 個字符串s1,s2,s3,...,sNs1,s2,s3,...,sN ,並且他準備選擇一些字符串順次連接

原创 uoj#117. 歐拉回路

題面在這裏 題意: 求有向圖和無向圖的歐拉回路。 做法: 【模板】 具體做法自己百度。。 代碼: /*************************************************************

原创 bzoj3659: Which Dreamed It

題面在這裏 題意: 有n個房間,每個房間有若干把鑰匙能夠打開某個房間的門。 最初你在房間1。 每當你到達一個房間,你可以選擇該房間的一把鑰匙,前往該鑰匙對應的房間,並將該鑰匙丟到垃圾桶中。 你希望最終回到房間1,且垃圾桶中有所有

原创 bzoj2815: [ZJOI2012]災難

題面在這裏 題意: 有一個n個點的關係圖,u->v有邊表示u能喫v。 去掉某個點以後會有一些點沒有東西喫,每個點的災難值定義爲如果去掉這個點,會沒有東西喫的點的個數。 求每個點的災難值。 n<=65534 做法: 好妙啊QA

原创 hdu5883 The Best Path

題面在這裏 題意: 問一個無向圖是否有歐拉路徑,並且有的話使得經過的點的權值異或和最大,輸出這個異或值。 做法: 首先判圖是否連通。 然後度爲奇數的點只能有0個或2個。 發現一個性質:(度+1)/2是奇數的點都是在路徑上的。

原创 loj#2251. 「ZJOI2017」樹狀數組(二維數點,樹套樹維護概率)

先放代碼,日後更。(*2) ===========================2018.3.21UPD=========================== 題面在這裏 做法 容易發現只要將query的l−1,rl−1,r

原创 loj#2323. 「清華集訓 2017」小 Y 和地鐵(暴搜+樹狀數組)

題面在這裏 題意: 看原題吧不概括了。。 做法: 觀察到 nn 很小。考慮直接暴力,所有區間按照左端點排序,右端點用樹狀數組維護。 或者可以用位運算優化掉一個 loglog 。 代碼: #include<cstdio> #i

原创 bzoj4388: JOI2012 invitation(線段樹+堆)

題面在這裏 代碼題。。 題意 有 nn 個男生, mm 個女生。給出 kk 條關係,每個關係形如 ai,bi,ci,di,tiai,bi,ci,di,ti ,表示 [ai,bi][ai,bi] 的男生和 [ci,di]

原创 uoj#295. 【ZJOI2017】線段樹(樹上倍增)

先放代碼,日後更。 ============================2018.3.21UPD============================ 題面在這裏 做法 首先需要了解zkw線段樹的操作過程。(不懂的百度一下

原创 spojPHRASES Relevant Phrases of Annihilation

題面在這裏 題意: 求在每個字符串中都滿足不重疊的出現次數>=2的最長子串。 做法: 拼接+二分答案+height分組。 首先將所有串用一些不同於串中字符的字符連接起來。(這些字符也要不相同)然後跑這個大串的sa。 二分一個最長

原创 poj1386 Play on Words

題面在這裏 題意: 給n個字符串,兩個字符串若頭尾字符相同可以連接起來,問你是否可以把n個字符串連接起來。 做法: 對於一個單詞,把它頭尾的字符之間連一條有向邊,然後問題轉化爲求這個圖是否存在歐拉路徑。 一個有向圖存在歐拉路徑的

原创 bzoj1880: [Sdoi2009]Elaxia的路線

題面在這裏 題意: 求一個無向圖中,兩個點對最短路的最長公共路徑。 注意給出的x1,y1和x2,y2不一定是從x走到y,可以是y走到x。 做法: 首先無腦跑最短路QAQ.. 事實上,我們要把以x1,y1,x2,y2爲起點的最短