NOIP2018集訓總結,10.25~11.9
前話
明天就要參加NOIP提高組了,有點小緊張。
總結一下過去幾天做的一些事情吧。
實話說,我感覺到了師兄的強大與巨大的差距。
並且通過一次又一次的模擬賽補充自我不懂的知識點,這個過程還挺有趣的。
正題
集訓一開始,老師就叫我們開始做atcoder的題,不斷做比賽,增強比賽的能力。
atcoder很多構造題和數論題,我們也為許多沒有見過的題型而歡呼。
10.25,補了Catalan數這個大坑,那3條基本公式要記住,在比賽中的運用,如果看出來是Catalan,也就是約一下分,或者求高精度。例題:[AHOI2012]樹屋階梯, [HNOI2009]有趣的數列。大多都是很水的。
10.26,早上也是做atcoder的題,下午學了一下線段樹合併,挺好理解的,要注意的就是merge的時候見到0就要返回,否則保證不了時間複雜度。
10.27,週六,noi上面有比賽,去打了,第一題是求一個最小正環,第二題就做到了原題,也就是上一天的線段樹合併。第三題50分的暴力。求正環用floyd倍增來做,因為自己和自己做一次轉移,相當於走了2倍的步數,所以轉移9次,在倍增就可以了。
10.28,週日,noi上面又有比賽,第一題用了Hall定理,具體在部落格中有說,第二題是給出兩個數列a,b,要求的第l小到第r小。我們可以二分第l小的值,然後對於每一個ai,找出一個在b中的端點,直到小於二分值的個數等於l-1。接著,再把處理出來的斷點的值放進優先佇列,暴力取最小就可以了。(最大也是一樣)
10.29,這一天也挺強的。補了兩個大坑Lucas和BSGS,以及其擴充套件,並且還把證明寫的很清楚,有興趣可以看一下。
10.30,這一天,做了Lucas的一些題和Dp:
10.31,考了一次試,第二題A了,第一題打了暴力,第三題暴力,期望190,實際140。第三題的線段樹加標記沒有下傳。
第一題是給出n個數,要你求一個k,使得最小。zch大佬說“這不是水題嗎”。直接用一個數組記錄一下每個數出現了多少次,然後列舉k,對於一段裡面的權值,是一樣的,把這個總和求出來,然後用全部數的總和減去就得到mod出來的數,再加上就是k答案。時間複雜度就是:。做完了。zrO zch Orz.
第三題一棵樹,邊上有權值,上面有一些點是特殊點,定義一個特殊點的好朋友是離這個特殊點的最遠點,可能有多個。求去掉那個點可以使的最多多少個特殊點到達不了他的好朋友,並且一共有多少個這樣的點。這題自閉了,晚修調了3h沒調出來,正解是找到中心,然後考慮各種情況,因為一個點的最遠點一定過中心。然後自閉了。
11.1那一天是校運會開幕式,所以早上一直在做題和整理,下午開幕式才結束,所以學了新演算法,左偏樹,這個神奇的東西可以支援在堆中插入刪除和合並。然後JLOI有一道堆合併的題,就去做了。
11.2補了一些口胡的演算法,比如說三分之類的東西。然後做了一道三分套三分的噁心題目。
11.3是星期六,好像做了模擬賽?刷題了吧。那天沒寫部落格我也忘記了。學了新演算法?
11.4早上是星期天,早上去做了模擬賽,然後中午仁慈的ls帶我們去吃了頓火鍋。下午學會了分數規劃的套路和線性基,這兩個東西可以處理的問題都有很多,比如說分數規劃:可以處理類似於比例的問題,[HNOI2009]最小圈,[SDOI2017]新生舞會,[SCOI2014]方伯伯運椰子。
11.5這一天做了很多關於線性基的題:像[SCOI2016]幸運數字,[CQOI2013]新Nim遊戲,[WC2011]最大XOR和路徑,[TJOI2008]彩燈,[JLOI2015]裝備購買。
11.6做了很多概率期望的題,包括在圖上的應用(我才不會告訴你是scy叫我們刷的。[GDOI2014]採集資源,WJMZBMR打osu!,[NOI2012]迷失遊樂園。有些太簡單的就沒有貼出來,下午看到一種很神奇的搜尋合併的方式:Meet in the Middle,一道簡單的拓展題:[USACO12OPEN]平衡的奶牛群。
11.7早上又準備了一場比賽。打到自閉。第一題是最短路/直接Dp。第二題是一道線段樹優化建圖。第三題AC自動機。下午一直在條一份錯誤的程式碼,調到自閉。發現正解不是這樣的,下午和晚上就補了線段樹優化建圖。比賽的題目是:禮物,題面和題解都有。
11.8這一天補了AC自動機,做了兩道練習題,然後最後還複習了一些2-SAT。
最後,祝天下所有的,即將參加NOIP的Oier,會做的多拿分,不會做的多騙分,多打暴力,對拍。