傳送門
別出心裁的一道sa,想了好久。。
首先求出height數(shù)組 考慮如果只求一個r的話怎么做 顯然可以將height數(shù)組分組,每個組里都是height>=r的,然后對于每一個組計數(shù)+取max 那么如果有多個r呢?
顯然r大的要比r小的分的組少一些 換句話說就是如果已經(jīng)將r分組,再將r-1分組的時候,可以往上一次分的組里插進(jìn)去一些 也就是說可以r可以在r+1的基礎(chǔ)上統(tǒng)計 先將height排序,然后從大到小枚舉,每一次將相同的r全部加入進(jìn)去 不同的組可以用并查集維護(hù)(size,最大次大,最小次小),合并的時候只需要分別減去合并之前的答案然后再加上合并之后的答案就行了,求最大值不用減只用取max
時間復(fù)雜度
新聞熱點(diǎn)
疑難解答