11.15算法
上午就要出發了。編程
早上來先把比較長並且機率偏小的板子整了整。而後寫了4個裸揹包。準備搞高精度。數組
番外:值得記念的考試(霧函數
學OI的第一次考試,也是第一次抱零測試
信心創建於考場YY樹上差分。優化
信心創建於考場上用$Hash$過AC自動機。spa
人生惟一一次靠着B組題AK,還2h就寫完並掛上了3個對拍。插件
人生惟一一次合考rk1,可是並列了十多我的,並且仍是由於T3不會因此棄療才提早交的。並且這套題還沒講。3d
聯賽前最後一次模擬,無論考的怎麼樣,都挺值得記念的吧。指針
準備退役。
11.14
上午改題。
T1維護凸包,考慮沒有常數項是爲了什麼。是由於能夠把x提出來分類維護直線凸包。維護凸包之後在凸包上進行二分,根據凸包的斜率單調性就能夠卡出最優決策。細節很是多,沒有過來人的指點根本不可作。
T2考慮a1和每一個a的貢獻,而後簡單加和。考慮組合意義,而後算出總方案,每種貢獻的方案,相除而後成上貢獻即爲指望,有一部分的機率很是很差算,那麼就直接1-以前的機率。
T3不會。
下午考試。
然而極可能是:
這個了。
T1先順序對乘以逆序對,而後考慮多算的部分,直接減掉,至於重複部分能夠瞎猜加打表證實……減的就是該點的相關逆序對成上相關順序對。連寫帶想2h,掛對拍常常死,測出一個小點,發現樹狀數組的上界鍋掉了。狀態其差。
T2一開始以爲是設備$dp$,後來發現根本不可作,暴力都是留到最後打的,並且$26^{10}$搜都搜不出來。
T3考慮函數意義,k維組合數在某個有限制k維空間內的奇點個數。不太會搞,打了個暴搜帶$log$求2指數。而後子任務放錯了跑出了45。正解應該是個數位$dp$而後高維前綴和容斥的形式,並不知道怎麼搞。(過後證實這是對的,但是老年選手並不能寫出來)
而後最後一次模擬就結束了。
而後聽教練暴秀單口相聲,笑死我了。
是什麼讓人愛上趕火車的刺激?
趕不上飛機應該如何是好?
爲何OI教練喜歡偶數?
酒駕的真正緣由是什麼?
當人陷入泥潭應該如何拔出?
詳見今日說梗。
教練真是人才。
WDG被ran數rand成單人一屋了,要不是我Day2打暴力多了50分,第22就是我了,笑死我了。
不太想改題了,寫寫板子。
手寫堆
手寫Hash表
樹剖lca
瞎寫的線段樹
scctarjan
Dijk
Euler路
11.13
教練提醒降溫,而後我就晚上加了件衣服。
起牀發現,這室外溫度和我家室內溫度差很少……
早上來了把昨天沒寫好的線段樹分治搞掉了,昨天晚上WA0是由於ans沒初始化成1,並且沒有freopen,加上就A掉了,比DashSpeed好打得多,可是處理每條邊的做用時間的時候用到了一點Hash的思想,仍是不錯的。
上午考試。困。
T1$1e9$還只有一個數,顯然規律題,掏出個人ppt,用出題人送的六邊型網格開始手動打表,(WDG5min後大力敲鍵盤切掉了,我就慌了)慢慢的打,一開始沒思路,看到了特殊性質$3(k+1)k+1$,試了幾個數,發現是正六邊型,忽然意識到什麼,找到離他最近的正六邊型,而後找到增量規律就行了。
T2沒什麼想法先跳過。
T3發現好像是個設備題,$O(n^3)$$O(n)$$hash$$censoring$check瞬間寫完調完。回頭看T2考慮建基環樹,發現貪心選擇最大出邊就能夠了。寫完考試還剩30min了,又去想了想T2,發現是假的,只要一個環都最優就沒了。rash了一下沒有成功,就交假貪心了。40。
下考發現T3理解錯題意了,被諸如bobobb、ioioii卡成設備。只有20。
而後就325卡線省一了
下午改題。
T2基環樹調的腦子疼,最後發現我不會更新最大值次大值。Topsort和Dfs找環又複習了一手。
寫了個數學題,標程是$O(n)$,題解說能夠$O(1)$,推了推,感受海星。過了1e6對拍10000組。
晚上考試。困。
T1不會,打$O(n^2)$暴力,有20。T2不會,Qj全是1。有10,T3不會,打$O(n^2)$暴力。
kuku,miaomiaomiao,5555……。
11.12
晚上作夢,夢出了一場科幻大電影……外星人入侵HZ,大部分學生被洗腦,只有我和某我的(我還忘了是誰了)是清醒的,而後外星人讓HZ學生去圖書館往飛船上搬水果……最後電影在我和爸媽吃羊羯子的畫面中結束……(由於我被楚喬轉的片尾曲弄醒了)。
早上起來仍是左半腦偏疼。
發現那個水題哪裏寫shi了,雙向邊的add調了兩遍,暴力刪邊的時候每條邊又會跑兩次,多了4倍常數,直接從0.7AC變成2.8T飛。改完A掉。
寫的真醜……
上午考試,困。
T1高考物理,寫的溫馨,$O(1)$弱智式子使人愉悅。掛個拍,發現對拍精度被卡的特別死。
T2以爲不太可作,應當打表,最後再搞。
T3沒什麼感受,暴力的30和Dsu的20仍是好拿的。正解沒什麼想法。回頭搞T2,$Dfs$10min碼完,開始打表,打到考試結束(自閉),沒打出來……
而後發現子任務的分好像放錯了,T350->80,海星(好吧,本機沒有放錯,仍是50)。
而後就335卡線省一了
(而後教練就說下午還有一場,沒門票)
下午考試,困。
T1天窟窿?(kx抱0那個題?)仔細讀讀不是,好像是我上次作天窟窿讀錯題的那個意思。想了5min沒有思路,感受有點涼。看T2,這不是設備判環?map一下字符串直接判就完事了。結果被讀入卡住了20min,好不容易魔改快讀讀進去了,想起一些看博客頹到的內容,還忘了'\r''\n'這倆玩意誰前誰後,誰有誰無。把他們倆的ASCII碼搞出來全都特判掉。而後開始建邊判環,閒得丹騰sort&unique了一下,結果第一個樣例過不了,unique沒了……去掉,過不了第二個樣例,cnt寫成n了,改掉,過不了第三個樣例,想起來tarjan的單點也算scc,刪了,換成$Dfs$判環,過不了三個一塊兒,清空沒清夠。寫的腦子疼。
T3一開始以爲不太可作,並且神志不清,都沒有想到正反圖就能預處理dis數組,跑了b遍Dijk,而後以爲只能$O(2^n)$的時候,意識到一些東西,發現好像$sort$一下就成設備$O(n^3)$區間劃分$dp$了,yy一下,微擾一貪沒問題。打完之後全是inf和-inf,最後打急了,把第一列初始化從第二列開始跑,終於過樣例了,算算複雜度能65,一開始還想QJ一下,把第三層循環調小一點,發現本身的b遍Dijk成瓶頸了,就沒打。後來想一想,怎麼沒想到正反圖跑呢?由於一開始的Topsort和Bfs都被卡掉了,就沒有仔細往下想,直接上Dijk了。
剩下時間作T1,臨結束20min寫了個$dp$,仍是一分沒有,半場題抱0了。
晚上改題。
T1仍是$O(1)$結論題,考慮會被浪費的部分,其實應該好想,可是考場的打表裝置是0分的,沒有找到規律也沒辦法了。
T2設備卡讀入題目,算法顯然,看你讀不讀的進去。
%%%rk6的AK爺
T3處理數組用正反圖便可,這是真的沒想到。而後因爲分的段長單調不增,考慮第三維從$i-\frac{i}{j}$枚舉到$i-1$就完事了,根據調和級數複雜度就對了$O(n^2logn)$。
隨手寫了一下NOIP2014解方程,直接魔改快讀。全部數都在取模意義下跑,而後就能夠了,秦九韶算法詳見高考數學必修三。$O(mn)$。
頹博客被教練抓了kuku,我只是發了個圖片,我真的寫完題才頹的kuku(啊,不對,我是來寫題解的)
改了上午T3,一開始不太清楚怎麼維護邊的出現時間,後來發現Hash一下就能夠了,而後就是比較簡單的線段樹分治帶可回退Dsu,比什麼DashSpeed好打多了。然而睡覺前沒有A掉。
11.11
仍是困。跑操的時候聽不見啓動口號,只能跟着$xuefeng$喊,他喊第一句,我聽見了,而後我再開始喊。跑完之後精神不適。晨讀聽聽講題。
上午來了先把T2的測試點分治幹掉。而後成功AC。
接着…………
我恨Dp。CSPS應該不會有太多Dp吧。
忽然以爲我在放P。
T1狀壓好啊。Cyf好啊。Cyf的狀壓更好啊。$dp$0/1的定義是在當前狀況下路徑數目爲偶數/奇數的方案數。考場一直把路徑數目,路徑長度,路徑條數,路徑方案數,操做方案數弄得很是混。我又把99244353寫成1e9+7了。
T3考慮貪心的匹配,維護兩個數組,一個表示這個點向下可以剩下的,另外一個表示還須要的,每次取min減法轉移。
運輸計劃也發現鍋了,二意性躺了,兩個cnt,一個局部,一個全局。改完之後就95了。剩下就是寫個樹剖啥的去卡卡常。
運輸計劃過掉了。樹剖lca比倍增快了2倍。
第二張好像又沒有截全。
下午考試。困。
T1先打$O(n^2)$,而後不會了……看T2,先寫$O(2^n)$暴搜,數據範圍明示折半搜。處理完兩個暴搜數組並sort完之後……不……會……了。在2.cpp裏放着兩個單調的數組而後並不會求第k大。T3讀題30min,想一想聯合權值,好像是有序對。再讀題,好像明白了。先寫個10分壓壓驚,而後開始大力亂搞。寫完之後還有1h。又開始胸悶了。去水房洗臉而後看T1,打開個人三個計算器,開啓編程模式,排成一排,開始打表。而後……誒?好像一開始同樣的幾位沒影響,哦,顯然。而後後面是一串1,爲何?從第一個不一樣高位1開始,哦,沒問題。好了,切掉。
T1大力打表AC。
T2折半搜顯然。二分答案,而後指針掃,求出排名。
T3$bitset$好啊。(kx:正解滾蛋)(kx:什麼玩意)
開始重寫鬥地主。
左半腦疼。
30min寫完了,沒換行WA了一發。
壓行版本。發現題庫有一道水題,等我去水了它。(MD,40min沒寫出來,T飛88)
11.10
晚上作夢,醒來全忘,渾身無力,還想接着睡,還好今天不跑操。
早上來了把換教室切掉,一遍AC,舒服。
簡約壓行版本,一行的$Floyd$,第二個$dp$式子截不全。(爽啊)
上午考試,困。
看到這個單詞:,感受一絲熟悉,再看:,咱們考過V1.0嗎?好像考過,待會自閉了能夠去翻翻題庫找找他的題目風格。而後…………
開幕雷擊。
上次的那套的分:
藥丸……
T1神仙$dp$先過,T2正解應該是$O(n^2)dp$,然而我應該能夠直接記憶化淦過去,半小時之後掛對拍才發現記憶化顯然是假的。準備交暴力。T3樣例都玩不出來作個鬼。T1發現一個有點意思的規律,第一個樣例是$\frac{6}{4}$,而全部數據的和剛好是6,分母剛好爲$2^2$,再看第二個樣例,全部數據相加不爲$17$,可是上一個樣例的目標位置是0,並且題面貌似有作差二字,因此全部數對於目標位置取差值,剛好爲$17$,分母剛好爲$2^3$,碼上一行的qpow走了。
T1拿到了25,數組只開到了40……沒開到$2^k$掛掉了75(被姚老師奶死了)。沒抱零還行,有分就好。規律是對的,可是並不會證實。
T2放了暴搜65,(能夠YY除了兩排ooo同樣的字符會卡死暴搜,不然隨機數據將被一下跑過)。正解$dp$並不可作。
T3是真的只能拿0分了。
寫憤怒的小鳥,仍是原來的$2^nn^2$算法。發現並不能過樣例。發現曲線的$a$值出現了$inf$、$0$等神奇數值,並且等於$0$的尚未用$eps$卡掉。隨手改改就過樣例了。(不要問我爲何上午沒交)
中午睡完覺起來肩膀疼,精神不振,困。
來了交憤怒的小鳥,OJ的$O_2$仍是勁啊。$2^nn^2$仍是讓過。
壓行上癮系列(爽啊)。
下午改題。改個P。寫了半下午的NOIp2015運輸計劃,個人check到底爲何不對啊?
踢球往前懟就完事了。角球進門可還行。發生了一件使人kx的事情。(Paris:Blind football)
晚上考試,困。考到一半忽然胸悶,寫完T1的預處理後眯了一會,寫完T1後去水房洗把臉,仍是頭疼。
開考看題:。
交互題?$Exciting$。(顯然是假的)
請容我作一個悲傷的表情。
T1狀壓,不會,寫了120行的暴搜,一分沒有。正解狀壓。
T2考察如何讀入,以及如何破解密碼。$bitset$優化,測試點分治跑50。過後發現一個事情,不可能無解,並且指望$O(n)$出解,因此直接上$O(\frac{n^3}{32})$硬跑,能夠在標準時間出解。把測試點分治去掉之後又多開了10000位的$bitset$就過掉了。
T3先想了個假貪心,而後$s==1$顯然是$n$,而後就真的只有20了。
11.9
上午改題。
T1能夠直接$O(n^3)$預處理,而後就是$O(n^3)$設備$dp$了。別人都是1000ms之內,我跑了9000多ms……
T2瞎打貪心水過,被新數據卡掉之後,$O(n^2)$上界改爲100水過。
T3博弈好啊。寫了整整一上午啊。$sg$函數妙啊。最近想把換教室和憤怒的小鳥從新寫一遍。鬥地主看狀況,賽道維護必定要寫。
下午考試,困。
T1亂搞氣息撲面而來,過。T2高難篩題,過。T3高難數學,可是給了80部分分,寫寫寫,40min拿到80,內心稍穩。看T1,想了個二分答案帶中位數貪心,能夠前綴和優化check,然而寫起來很shi,最後寫的$O(n^2)$check,測了測,跑的還行,隨便卡卡常就放掉了。寫T2的$O(n^2)$和開桶的部分分,寫掛了……
晚上改題。老姚來進行了一波心理輔導,感受海星。
T2思路妙啊,正常的暴力是隻用$O(a^{\frac{1}{2}})$的質數試除而後比較剩餘部分,能夠開桶掃出來。正解的辦法就是$O(a^{\frac{1}{3}})$的質數試除,如有剩餘平方因子,則應當大於$a^{\frac{1}{3}}$,那麼若$x=p^2*k$,$k$必然小於$x^{\frac{1}{3}}$,必定在以前能夠提早除掉,最後只要判一下是否是平方數就能夠肯定出最終的剩餘部分從而快速求解。
T3容斥$dp$理解起來還好,轉移係數是n==0的結論。比較噁心的地方是sort會坑掉一些特殊狀況,有些$dp$值的前繼狀態可能尚未算出來,因此直接上記憶化。
推了推換教室的式子,發現推錯了,推第二遍纔對了。寫完最短路的部分就已經沒時間打了。
忽然以爲腦子特別疼,去外面溜達一圈好一點,而後就只有一點針扎的感受了。
11.8
上午考試,困。
T1一開始以爲是容斥,先跳過。一看T2,瓶頸樹的板子題。40連正解帶暴力和對拍。隨機數據生成器有時候會被卡成死循環,還得不時看看。T3一開始有一個$O(n)$暴力,而後發現狀態數很是少,仔細算算髮現$1e18$才$1e7$左右,直接全都搜出來而後暴力枚舉,能1就1,不然暴力跑2,沒有就3。T1暴力打死了,致使心態爆炸。一直在想多步容斥,而後就死掉了。建夾比正常晚了半小時。
下午改題。
T1單步容斥便可。由於這個狀態和上一個狀態不重,則全部狀態都不重。T2設備題不想說。佩服各總體二分的神仙。
T3#define int long long 後就有60了,不知道哪裏錯了,之後仍是儘可能不用#define int long long了。
大模擬同樣的dp讓人變成斯拉克(其實別人都改出來了……)
在Zzn的勸說蠱惑下,寫了個搜索題,憑本身的能力最多卡到了70,而後就只能看題解了……神奇記搜加$Hash$,記搜好像沒怎麼打過呀。(然而Zzn如今尚未調出來(HuaJi:))。
晚上考試,困。
T1設備區間$dp$,10min打完$O(n^4)$,加個$bitset$跑1.7s,掛上拍直接過了。T2想貪心,按照$a-b$排序,而後讓a大的在後面,爲了最後一下衝上去,沒辦法對拍,由於沒想到$O(n^2)$。
T3什麼鬼……
11.7
上午先改題。
T1的思路比較妙。因爲正常貪心會出現兩個性質矛盾的狀況。因此咱們先求出無字典序限制的數目,而後對每一個b二分其最優答案,由於當數目減小1的時候,符合題意,則貪心往大選,不然往小選去知足性質,若是沒法知足條件,則考慮字典序,若是刪除後數目不變,則貪心往大選,不然往小選去知足性質。這樣問題在於如何快速統計數目並支持修改,能夠用權值線段樹,維護區間內a牌的數量,b牌的數量,小A能拿到的貢獻,因爲右區間的權值必然大於左區間,則小A必定能經過右區間的a拿到左區間b的貢獻,因此二者取min,而後用來更新三個變量便可。a牌集合能夠multiset維護來肯定二分上下界。
8:30開考,困。
T1沒什麼思路,直接寫的$nth-element$。
T2也是,直接寫了$O(n^2logn)$的$dp$,沒有用單變量,反正是暴力的分,$O(n^2logn)$的線段樹不用動腦子。
T3指望,寫完Dfs把設備n==q拿到。而後考慮維護每一個石頭成爲陣元的機率,sort一下就有了,而後暴力的寫每一個區間內陣元成爲最大值的機率,結果寫了5個for循環之後不知道本身是誰了。
結果就把腦漿寫幹了,(最氣的是過不了樣例)出去上廁所的時候發現一機房好像停電了……刺激.gif。
而後就等死了。
中午吃飯的時候,電影頻道的男主角說:我還要打、我還要打、我還要打……。我都能想象到一機房考試結束前的心裏狀態就是這樣的233333333333……。
下午改題。(零食真香啊)。個人友鏈能夠測腦洞233。
T1題解寫倒了,而後打完之後不知道怎麼調,最後是a打成b了。全部錯誤都是zy給找的。
全是特判的題就是設備。
T2玄學剪枝(瞎剪)A掉,我沒臉。(Zzn沒臉)
今天大概30多我的一塊兒踢全場,足球過程相似打架,滿場瞎跑就完了。只見Papa帶球被截,Barca帶球帶歪,LiumouDing點球踢飛。這是一羣什麼隊友和對手。
晚上研究T2正解。沒搞出來,弄了個神奇的純線段樹解法。
神奇在對最小值區間取max來在線段樹上二分。線段樹上的東西能夠根據定義和須要隨意魔改pushup和down。具體解法詳見Jrf。
11.6
上午改昨天晚上的題。
T1單調棧,寫的噁心,全是特判,致使頹碼後致鬱,以致於不想寫東西。
T2倒着考慮,每次把本身控制的區間加上本身權值,能夠差分維護。遞推的看不懂。
T3沒寫咕咕咕。
下午考試,困。
T1一開始以爲直接根據拓撲貪心的性質倒着貪就完了,結果被$next-permutation$拍死了。最後就交$next-permutation$了。
T2也是,以爲是個設備樹狀數組,而後發現是僞的,鐵着頭交了。
T3根本不會,暴力都沒寫出來……
晚上改題。
T2考慮每次把最小值移動到邊上,這樣就會有更小規模的子問題。而後會發現問題是求一個點左右兩側比他大的數的個數,由於移動最小值的時候別的點的這個變量是不會改變的,並且把最小值移動到邊界的貢獻就是比他大的數的個數,由於他是最小的。因此仍是設備樹狀數組,只不過是每一個位置取min求和,而不是求和取min……
11.5
上午考試,困。
T1設備題,10min寫完,閒着丹騰寫個對拍(用for寫的),開考40min掛上,而後想T2的時候發現其中一個把另外一個拍死了。調了10min,有點氣。
T2一開始有一個魔改$Dijk$的想法,可是考慮錯了,沒想到倒着來,正着寫的,而後就GG了。倒着考慮而後只鬆弛第$d+1$個,和$KDt$的兩個題有點像。改題的時候$Dijk$打錯了,拓展次數爆炸了。
T3考場連能夠拿30的暴力都沒有打出來,本身寫的暴力跑8如下的特別勉強,仍是$subtask$,而後就沒有而後了。正解神仙$dp$目前還沒幾我的寫出來……。
下午踢球的時候爽啊。我和DuanYue在敵方半場聊天,而後Zkt就覺得我是他們的人了,我站在球門前他都不防我,擡腳就進了……而後就是LiumouDing的界外扔進球門,Lyl扔到LiumouDing腿上而後就進了……(這是什麼玩意),最後跟着PaPa衝,讓PaPa單走了一個。對面好像進了一個(我也是過後據說的……),可是我當時在和DuanYue聊天,沒有注意……,對面原本還能進一個,結果一陣風吹過,就沒有而後了。
晚上考試,困。
T1顯然單調棧,可是發現一個很坑的地方,而後想不出來怎麼容斥掉……就先寫的線段樹暴力拿20,而後瘋狂打表找規律把單調不增的分拿到手了。
T2看着像個結論,可是打完暴力而後測特殊性質的時候發現好像是能夠遞推的,由於兩個特殊性質都是很是經典的遞推出$O(1)$的式子,然而並無寫出來。
T3暴力分55寫個毛線球正解。
11.4
上午改得昨天晚上的題,題解順手寫在11.3了。
下午考試,困。晚上改題。
T1裸的歐拉路,建圖跑,分有向無向,考得挺全的。然而不會……藍書的仍是非遞歸的,只是讀過幾遍,現場yy,而後就yy錯了,當前弧e[i].nex寫成i。只有55。考後調調歐拉路,感受很是shi。改了一夜。
T2考場一開始暴力卡常應該是80的,忽然想了一個剪枝,把大樣例跑出來了……發現本身的暴力樹狀數組清空清少了,差點就WA0了,還好最後去想了那個剪枝,一顆線段樹5min就碼完了,而後A了,神清氣爽。正解思路不錯,考慮每次操做會少多少,而後利用均攤算複雜度,線段樹維護。
T3當場就是40Dfs暴力。而後就改不出來了……
11.3
放假回來,晚上考的,困。
T1想了個分塊的思路,打了1h發現僞了。而後寫線段樹,寫了1h發現也是僞的,最後交暴力了。聽了聽線段樹維護單調棧,發現之前之因此不能理解cal函數,是由於對於維護單調棧有點誤解,實際上是算貢獻,不是真的棧,左兒子只受到傳入參量的影響,右兒子要麼依舊受到左兒子控制,要麼受到傳入參量控制,依舊受到控制能夠直接用sum[p]-sum[p<<1],取決於pushup的sum[p]=sum[p<<1]+cal(p<<1)。固然能夠維護一個額外參量。
T2直接就輸出-1了。因爲原料沒有限制,天天作電腦的最小原料錢是能夠直接單變量幹出來的。而後用權值線段樹開一個倉庫,先把全部的電腦認爲是在第一天作的存進去,而後取出的時候再加上存電腦的錢,動態的刪除已選元素,刪除多餘的元素,貪心的取最小,刪最大。-1隨便特判一下。
T3打了30Dfs,而後掛上了一個基於反悔堆的貪心,沒有多分。按照A小到大排序,兩兩分組,選取其中B比較大的,這樣B必然知足,A的最壞狀況是全都是小的,然而在選擇集合不變的基礎上,將分組向右平移,則達成兩兩分組選擇的A較大。因此必然有解。
附錄: 隨行的數據生成器,插件和飈程。