日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CF1010F Tree

發布時間:2025/4/16 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CF1010F Tree 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

真·毒瘤題

這個題面寫錯了一句話。要求的是每個節點的石子樹>=它的兩個兒子石子數的和。
首先考慮怎么算石子分配的方案。
如果對這棵樹每個節點的石子數都和兒子差分一下的話,可以唯一對應一顆每個點都要一個>=0的權值的樹。
且這棵樹的權值和為x。
那么就可以插板法算一下了,因此它與樹的結構無關,只與大小有關。
因此我們只需要對第一種操作算一下聯通塊大小為k的方案數即可。
直接dp是n^2的,過不了。
首先樹鏈剖分。
然后重鏈頭的dp值可以寫成一個多項式。
設a[n]為鏈上左兒子的dp值的生成函數*x。
ans[n]=1+a[n]×ans[n-1]=1+a[n]+a[n]a[n-1]+a[n]a[n-1]a[n-2].....

考慮怎么計算這個式子,大力分治乘法即可。

考慮一下這樣做的復雜度。
做一次這樣分治乘法的復雜度是size^log^2的,size為重鏈頭的子樹大小。
又因為使用了樹鏈剖分,每個點到根節點的路徑最多只會有logn段重鏈,每個點只會向上貢獻logn次。
因此總復雜度O(nlog^3n)

轉載于:https://www.cnblogs.com/Creed-qwq/p/10452856.html

總結

以上是生活随笔為你收集整理的CF1010F Tree的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。