JSOI2015 一輪省選 個人題解與小結

2022-01-10 23:17:19 字數 2420 閱讀 6717

t1:

題目大意:現有乙個以1為根節點的樹,要求從1開始出發,經過下面的點然後最終要回到根節點。同時除了根節點之外各點均有乙個權值(即受益,每個點上的收益只能拿一次,且經過的話必須拿),同時除了根節點外各點均有乙個經過次數的限制,要求求出來從根節點出發回到根節點的最終受益總和的最大值,以及這個最大值是否存在多種方式可以做到(單純的訪問順序不同算一種)

題解:很明顯的樹狀dp,關於每乙個節點均轉移一下,取最前面的一些(注意出現負數的話不管怎麼樣直接無視,但是0不要直接扔),然後再取最大的求和即可(建議用乙個堆什麼的維護,直接蠻幹怕tle,反正我一般直接上左偏樹)。接下來就是關於多解的轉移了——這裡面個人認為有三種情況會出現多解:1.被取到的子節點有多解(這是顯然的) 2.在當前點取完後,在被取的點裡面存在值為0的點(顯然可取可不取對不?) 3.取完點後,發現被取的點的最小值和沒被取的點的最大值一樣(也就意味著既然可以選這個,也可以選那個) 別的沒了,樹狀dp亂搞搞即可ac

注:此題由於要考慮到一些細節,所以估計大部分人跪在細節上了——所以——對於自己會的題目,好好珍惜吧——畢竟我等蒟蒻能會的省選題不會太多的

個人程式100分(pascal)

t2:題目大意:給乙個01正方形矩陣,求出最大的正方形子矩陣滿足8元對稱(4條對稱軸)、90度對稱**90度,轉180度,轉270度均能重合)、4元對稱(2條垂直對稱軸)、180對稱軸**180度能重合)、簡單對稱(1條對稱軸)的子矩陣變長

題解:額。。這個。。。貌似全場沒人成功ac,於是我也花了5分鐘寫了個o(n^5)的暴力(雖然顯然遠遠達不到,實際數值大概o(n^4)的樣子),結果奇蹟發生了——70分!!!!(聽star神犇說用二分,詳細不知道orz otl)

注:看來伸展樹老師(嘿嘿嘿:伸展樹 è splay è spl 有木有!!!)說的很對——大力出奇蹟!!!對於這種能寫暴力的題目不寫白不寫(但是顯然不可能寫了也白寫)orz orz orz

個人程式70分(pascal)

t3:題目大意:對於乙個無向樹,先去掉無用點(無用點是指度為2的點,去掉無用點就是指把無用點左右側的點直接連線到一起,從而無視此無用點),然後判斷剩下來的樹是不是形態一樣(一樣這個東西有點類似於判斷有機物的同分異構,只是連手型原子都用不著考慮)。

題解:這個嘛,我雖然某種意義上算是ac了,不過其實我的亂搞的——方法如下,首先去乾淨無用點,然後接下來對於兩棵樹,首先對比點是不是一樣多(顯然的),其次是各點的度數得有可能一一對應,然後滿足如下條件的話,我用了乙個很逗比的方式——對於兩棵樹,分別剝掉最外層的一層葉子節點(度數為1的點),然後看是不是去掉的一樣多,如果不一樣直接可以斷定為不同;然後接著繼續各剝一層,然後看一不一樣多,然後同上一層一層來剝,直到剝到裸奔為止,如果每一波剝下來的都一樣,那麼這兩個圖就一樣(其實我是受化學上異構體判斷法的啟發——判斷乙個烷烴是否同構,我們一般實際上都會忽視掉h原子對不?然後實際上這次可能出現更複雜的圖,所以為何不可以考慮將剝了一次的碳鏈再當作完整有機物再剝呢?對不?)雖然正確性我不會證,但是還是混過了jsoi的10組資料(jyy說正解是雜湊,貌似有點道理,詳細也大概明白點了)

注:這題。。。唉。。。想到了就想哭——難得搞出來一道難題,結果居然逗比——輸出格式弄錯了,唉。。。否則我270就全省第一了,而且相比210的最高分簡直就是狂虐。。。唉。。。逗比毀一生啊。。還是那句話——好好珍惜有想法的題目吧,畢竟不多

個人程式100分(pascal)(實際上此題爆零,由於輸出格式逗比了)

總結:第一輪已經結束,由於本人上一輪noip嚴重逗比的緣故,所以省內排名才30的樣子,不過也基本上和上一輪500上下的小夥伴們扳平了,加油——繼續努力。同時值得注意的是,我之所以能有好的進步抑或是發揮,和我之前一直覺得自己太弱,一直保持著憂患意識相當有關,希望這次小小的勝利不要打亂我進步的節奏——能阻止我自己的人,只有我自己;能保佑我自己的人,更是只有我自己。最重要的一點是——少逗比,題目千千萬萬要看清楚,這次寫了12kb的正確程式結果最後狗血地死在輸出格式上也是醉了,我等蒟蒻會的省選題畢竟有限,還是珍惜吧——其實這次貌似t1能ac(個人覺得較水),t2認真寫o(n^5)的暴力(事實證明只要別逗比至少60能拿到),t3這種題這次純屬命大(lqybzx:呵呵逗比了還叫命大? hansbug:tt,不過話說最高分才210我170,rank5,心裡也算基本平衡啦麼麼噠),在接下來兩輪中估計也只能水個10-30的暴力。。。就是這樣,繼續努力,不以物喜不以己悲便是了

JSOI2015 染色問題

傳送門 雖然不是第一反應,不過還是想到了要容斥。題意轉化 需要求滿足 n m c 個條件的方案數。然後我們就列舉三個數 i,j,k 表示當前方案中,至少不用 k 種顏色,至少不塗 i 行 至少不塗 j 列。然後直接組合數算 式子不難看懂 最後容斥即可。那麼寫出來就是 ans sum n sum m ...

JSOI2015 子集選取

傳送門 看到這個資料範圍,就知道肯定是要找規律。如果把集合看成乙個長度為 n 的 01 串,0 表示沒有這個元素,1 表示有這個元素,那麼我們可以發現對於題中的約束關係,不同位上的 01 之間不會互相影響。那麼我們只需要對於只有一位也就是 n 1 的情況計算出方案 記為 x 那麼最後的答案就是 x ...

JSOI2015 最小表示

題目大意 盡可能多地去掉乙個有向無環圖上的邊,使得圖的連通性不變。思路 拓撲排序,然後倒序求出每個結點到出度為 0 的點的距離 d 再倒序遍歷每乙個點 x 以 d 為關鍵字對其出邊降序排序,嘗試加入每一條邊,若加邊之前兩點已經連通,則說明這條邊可以刪去。可以用bitset維護圖的連通性,注意原圖是有...