原创 [NOI2013]樹的計數 計數Dp

[NOI2013]樹的計數 題目傳送門 分析 強烈吐槽一下這道題不採用取模的方式,害我被卡精度卡了半天。 因爲畢竟是是自己yy的一種垃圾做法 手玩幾組數據~~(或者左轉看看題解)~~發現按層劃分BFS序很科學。 然後就可以發現一個

原创 [HNOI2019]白兔之舞 Bluestein's Algorithm FFT 生成函數 矩陣乘法

[HNOI2019]白兔之舞 題目傳送門 名字不錯 ^ o ^ 分析 題意:較長,自己看! 聽說要單位根反演?不會.jpg。 還好有非單位根反演的做法:-) 首先樸素Dp的話大概就是 F(i,j,l)=∑a=0i−1∑b=1nF(

原创 codeforces1172 E. Nauuo and ODT LCT

codeforces1172 E. Nauuo and ODT LCT 題目傳送門 分析 題目大意: 給一棵每個節點有顏色的樹,求樹上所有路徑不同顏色個數和。帶修改。 一個顯然的思路是分顏色考慮,對於每種顏色,考慮沒有貢獻的路徑,

原创 [WC2019] 數樹 容斥原理+矩陣樹定理+樹形Dp+計數Dp+生成函數優化Dp+多項式求Exp

[WC2019] 數樹 題目傳送門 分析 最近老是在肝一些神仙生成函數題。。。哎,肝敗嚇瘋。其實luogu題解裏面的那篇已經很詳細了,這篇題解純屬個人整理,建議是到到luogu題解去看。 題目大意:告訴你有倆棵有標號無根樹,如果某

原创 CF1019E Raining season 邊分治+凸包閔可夫斯基和

CF1019E Raining season 傳送門 分析 題目大意:就是給一顆樹,每條邊有兩個屬性(a,b)(a,b)(a,b),對於每個t∈[0,m]t\in[0,m]t∈[0,m],求一條路徑使得∑at+∑b\sum at+

原创 [CTS2019]珍珠 NTT 生成函數

[CTS2019]珍珠 題目傳送門: luogu 分析 考慮每種顏色有幾個。假設已經求出了每種顏色的個數爲d1,d2⋯dDd_1,d_2\cdots d_Dd1​,d2​⋯dD​ 方案數就是n!d1!d2!⋯dD!\frac{n!

原创 [CTS2019]氪金手遊 概率Dp,樹形Dp,容斥原理

[CTS2019]氪金手遊 題目傳送門: luogu 分析 先考慮一下那個奇怪的條件(都知道是哪個吧) 它實際上是說,整個結構形成了一棵樹。 但是這棵樹很奇怪,邊有順的也有反的。 先考慮全是順的邊的情況,也就是說,對於這棵樹,子樹

原创 模板:基於NTT的多項式操作

模板:基於NTT的多項式操作 因爲實在是太多東西啦,所以就全部整理了以下,持續更新ing~ 前置知識:NTT 順便說一句,代碼採用重載vector封裝的形式(因爲懶得自己開結構體) 下面是幾個已經封裝的基礎代碼,爲了方便瀏覽,先貼

原创 [CTSC2018]暴力寫掛 邊分治+啓發式合併

[CTSC2018]暴力寫掛 邊分治+虛樹 傳送門: bzoj luogu 分析 題目大意:給倆樹T,T’T,T’T,T’,求depx+depy−(depLca(x,y)+depLca′(x,y)′)dep_x+dep_y-(de

原创 算法學習:動態點/邊分治+[ZJOI2007]Hide 捉迷藏

動態點/邊分治算法學習 例題:[ZJOI2007]捉迷藏 luogu bzoj 題目大意:給一顆樹,節點分黑白,開始全黑,給兩個操作,要麼把一個節點黑白變化,要麼詢問樹上最遠黑點距離 動態點分治 呼呼,終於寫(chao)完了這道動

原创 算法學習:邊分治+bzoj2870: 最長道路tree

算法學習:邊分治 前言 本來作爲一名標準的NOIP退役選手,老早想要再見OI+停更+讀文化課一波行雲流水的操作了,結果D類居然還有,於是繼續苟!然後就有了日常賽前學算法。 例題 bzoj2870: 最長道路tree 權限題來着,題

原创 luogu4775[NOI2018]情報中心 虛樹 線段樹合併

[NOI2018]情報中心 題目傳送門 分析 即zjoi線圖之後又一道兩百行代碼的題。 其實luogu題解裏面的那份標解已經足夠清楚了,自己寫一遍只是爲了加深理解。 題目大意:給定一棵帶邊權的樹,給定樹上的多條鏈,每條鏈有費用,求有公

原创 luogu4125[WC2012]記憶中的水杉樹 線段樹 拓撲排序 掃描線 set

luogu4125[WC2012]記憶中的水杉樹 線段樹 拓撲排序 掃描線 set 題目傳送門 分析 題目大意:給定平面上若干條互不相交的線段。現在要把這些線段沿着上下左右四個方向移出這個平面。給定一種移動的方案,求這個方案最早在第幾

原创 [NOI2016]優秀的拆分 後綴自動機 樹上啓發式合併 線段樹

[NOI2016]優秀的拆分 題目傳送門 luogu bzoj 分析 這道題不管採用Hash,後綴數組還是自動機,網上大部分的題解都採用了關鍵點+調和級數這個操作。本蒟蒻想不到關鍵點這個操作,所以採用的是一種較爲繁瑣的O(nlog2)

原创 codeforces981H. K Paths NTT樹形Dp

codeforces981H. K Paths 題目鏈接 分析 題目大意:樹上選kkk條路徑,要求選擇之後某條邊只能被經過0,1,k0,1,k0,1,k次,且不能沒有經過kkk次的邊。求方案數。 所有被經過kkk次的邊形成的一定是一條