玲珑杯 ACM Round #10
A
題意:給長度為n的序列染黑白色,要求連續的黑的格子數量<=a,連續的白的格子數量<=b,問方案總數,有多個詢問
分析:遞推
注意數據范圍,是可以O(n)做的,所以可以直接遞推
B
題意:每個servant有ai,bi,ci,pi,有boss的血量H,求滿足(ai+bj+ck)(1+pi%)>=H(i!=j!=k)的組數,n<=1e5
分析:FFT典型應用
枚舉每個ai的話,問題就是求bj+ck>=M的組數,明顯的FFT應用
若b中有大于H的,直接修改成H,不影響結果,同樣處理c
將b的權值多項式和c的權值多項式FFT相乘
因為j!=k,所以把每個自己的bi+ci減掉
求個后綴和就是>=M的組數
還有問題i!=j!=k,可以做個容斥,減掉i==k和i==j的,發現這兩個很好處理
C
題意:給一個無向圖的某些點設置安全通道,使得無論哪一條邊斷掉,每個點都能前往一個安全通道(注意斷掉的那條邊連接的兩個點若設置了安全通道,那么這兩個點的安全通道也會崩壞),求最少要安放多少安全通道,以及在最少前提下的方案數
分析:邊雙聯通分量
容易想到先弄出所有邊雙然后縮點成一顆樹
若樹只有1個節點,那么答案一定是2或3,對于2的情況,我們只需要放(u,v),其中u、v沒有邊相連;但是如果沒兩個點都有邊相連呢(即是完全圖)?容易發現這樣2個肯定不行,3個是最小答案,任意取3個
若樹有多個節點,那么發現最小答案一定是在每個節點里面放一個安全通道,同時這個安全通道不能是連接樹邊的點,方案就是π(size(u)-1)
D
題意:圓柱桶內、外有兩只螞蟻,里面的螞蟻找最短路徑跑到外面螞蟻的位置,這題特殊的是,圓柱桶的內部底面可以走
分析:數學分析
問題可以轉化成:里面螞蟻先走到底面圓周一點A,再沿著直線走到圓周一點B,再從B走到外面螞蟻位置
畫出展開圖、列方程
具體的題解寫的很清楚了,然后三分……(但好像精度不行啊,要暴力求導二分導函數的一邊啊,很休閑啊?)
E
題意:求[L,R]內滿足條件的x個數,條件是x能分解成若干個整數的乘積,這些數每個位置不能出現1、6之外的數,R<=1e10
分析:暴力
1e10內滿足由1、6組成的數很少啊,先dfs出來
然后從小到大枚舉乘一乘,裝到set里
發現1e10內的x也很少啊……所以不會TLE啊
然后就把set中的東西寫到數組中,二分找區間
轉載于:https://www.cnblogs.com/wmrv587/p/6421385.html
總結
以上是生活随笔為你收集整理的玲珑杯 ACM Round #10的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 九度oj 题目1078:二叉树遍历
- 下一篇: hp服务器安装exsi5.5