【集训队互测】ayq 三道题
生活随笔
收集整理的這篇文章主要介紹了
【集训队互测】ayq 三道题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
道路染色
題意:一棵樹,給邊染色,要求相鄰邊顏色不相同,染不同的顏色代價不同,求最小代價方案。n<=150
考慮在樹上DP,如果確定了一棵子樹根上邊那條邊的顏色,整個子樹的最小代價就能確定。所以F[i][j]表示以i為根的子樹,根上面的邊顏色是j時,整個子樹+j的總代價。
考慮狀態轉移。這題最重要的地方就是狀態轉移的時候是一個經典的二分圖最優匹配模型。所以用KM轉移狀態即可。
幾乎平均數
定義Σ/(len-1)為幾乎平均數,求一段區間內最大的的幾乎平均數。
方法一:考慮部分枚舉。枚舉起點后發現我們需要一個數據結構維護一個比例式的最大值,同時支持插入和刪除。所以是動態凸包。
方法二:還可以考慮用空間換時間。枚舉起點和終點,可以更新其對應的區間。為了減少重復運算,所以倒過來更新,f[i][j]=max{f[i-1][j],ans(i,j),f[i][j-1]}
以上兩種方法各有利弊,考慮綜合一下。
對空間分塊。因為方法二太費內存,所以在空間上分塊搞,每塊內部用方法一,塊之間用方法二。
和與積
暴力20分。
考慮利用gcd。一頓亂搞40分?
ayq的題解里講的挺明白了。這題比賽時也就有暴力的份吧。。
wsc500原創,轉載請注明出處。請注明 出自http://www.cnblogs.com/loveidea/
總結
以上是生活随笔為你收集整理的【集训队互测】ayq 三道题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Spring5]IOC容器_Bean管
- 下一篇: win10一键还原(系统还原)图文教程