TCO2017 Semifinal 部分题解
生活随笔
收集整理的這篇文章主要介紹了
TCO2017 Semifinal 部分题解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Semifinal 1
ReverseAndIncrease
只需要知道s能夠到達的最小的數。
如果s不為形如99999的數,我們總能把他變為形如10002的數。 然后直接判斷
Code
ColorfulEnclosure
我們固定左端點,然后右端點從右往左掃描。
如果我們對每個點維護一個fifi表示當下邊界為ii上邊界至少要為fifi的話,每次刪除點相當于checkmax(可以畫圖理解一下)。
然后相當于用吉司機線段樹維護fifi,以及fi?aifi?ai的最小值。 這個不是很好做,不過有一種亂搞做法就是判斷當前區間是否全為1個數,是的話直接改,否則遞歸。實測速度接近O(log2n)O(log2?n),隨機數據比原版快,而且能做許多原版不能做的東西。
不過這道題我沒有A,好像網上的程序都過不了,不知道是不是TC的問題。
Code
Semifinal 2
RatingProgressAward
好題。
相當于把原來的序列分為三個部分,段與段之間的元素滿足原來的限制,然后使得第二段的和最大。
拆點最小割即可。
Code
總結
以上是生活随笔為你收集整理的TCO2017 Semifinal 部分题解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Unity KeyCode键值
- 下一篇: matlab单回路控制系统设计,实验二单