《算法競賽進階指南》刷題記錄


總算閑下來一些辣!然后最近發現其實看書是真真很有效但是一直沒有落實!所以決定落實一下這段時間把這本書看完題目做完!

然后發現還有挺多題目挺巧妙的於是一堆博客預警,,,可能最近會寫很多比較水(但是我還是不會做)的題目的題解

啊還有就是依然是[ ]表示沒寫 [X]表示已經寫完辣! 本來是染色標明要不要寫題解的,然而染色太麻煩了QAQ所以就寫完題解&&寫完代碼才會是[X]!

 

 

[X]64位整數乘法

快速冪/神仙方法

寫了個題解qwq

[X]最短Hamilton路徑

狀壓dp

又寫了題解,,,(因為,靈巧太弱了,大部分題目都做不出來,所以可能基本上所有題目都是說"寫了題解

[X]費解的開關

枚舉

以前做過,但是太弱了再看一遍依然不會,,,感到十分焦慮QAQ

太弱了!做過的題目還是不會!這種事情是最最最惡心的!所以還是要寫題解鴨!

[X]strange towers of hanoi

枚舉

[X]激光炸彈

前綴和

[X]tallest cow

前綴和

這道題趴,怎么說呢,,,首先你要明白這題是個什么玩意兒暴力怎么求,,,然后再想怎么優化,,,

像我這種傻逼,暴力都沒有想到?當場GG了QAQ

好滴也會寫題解的因為沒看懂題QAQ

來和前面的一樣,沙雕靈巧在線講題解

這題是,首先假設所有都盡量就都=H,然后如果能相互看見就讓他們之間都-1

於是很容易想到差分優化?大概就是醬

但是我實在是傻逼,數據結構搞多了沒有腦子了,我開始想的是線段樹維護

這樣會做成NlogN,但完全沒必要的呢,可以直接做個差分數組然后就O(n+m)的做就行了,,,哇我實在是太傻逼了?不行受不了自己了!太傻逼QAQ

[X]sumdiv

分治

有點快速冪思想的有趣玩意兒,挺有趣,會寫題解的

然后其實這題大概可以比較基礎地用等比數列求和+逆元做掉?順便把這個也搞了好了,鞏固基礎qwq

這題是醬的,求ab的所有約數和 mod 9901

首先把a表示成質因數乘積形式,然后顯然可以得到ab=(1+...+約數1b)*(1+...+約數2b)*...

然后這里其實可以用等比數列求和公式做掉,就用下逆元就成也沒有太大問題吼

但是這里還有個挺有趣的法子,有點快速冪的感覺

這樣的

設sum(a,b)=1+a+a2+...+ab

顯然當b為奇數時sum(a,b)=(1+a+...+ab-1/2)+(ab+1/2+...+ab)=(1+ab/2)*sum(a,b-1/2)

偶數時差不多改一點兒就成

然后就可以遞歸做掉了!

或者遞推也星?

感覺還是有點奇妙的呢!

[X]fractal streets

遞歸

[ ]遞歸的機器實現

知識點

這個是很妙的!就是因為你純遞歸可能爆棧,然后可以考慮用計算機對遞歸的實現方式把遞歸變成一個棧

但是我太弱了還沒太懂,先mk着會寫博客研究的qwq

[ ]三分求單峰函數極值

知識點

能理解,打算有時間把板子打了寫個博客,over

[ ]best cow fences

二分答案

主要它的check函數有點妙感覺

但是我覺得應該可以優化到預處理,再單調棧優化+二分O(logn)掃遍?不知道能否做到,待落實來着qwq

會寫題解的會寫題解的!

[ ]to the max

最大子段和

umm入門題?主要書上順便提到了然后想着最近多做點兒題趴所以就順手放上來了qwq

[ ]innovative business

二分答案

一個很有趣的題目,而且是個交互題!想做qwq

然后想法也還算妙?到時候寫不寫題解看心情趴?

哦插入怎么實現啊,,,不會啊感覺,,,有點,哭哭QAQ

[X]基數排序,計數排序

知識點

O(n)的神仙排序呢,要學!要寫博客!over

[ ]cinema

離散化

相對而言比較簡單?這幾天會直接在這兒寫下解法qwq

就開數組離散化統計每個語言有多少人高興然后排序?over

好趴說實話題目描述沒給得很好我只是猜應該是醬的,具體的如果有變化我會更新的qwq

[ ]貨倉選址

中位數(...小學奧數?

絕對值min,,,小學奧數既視感,,,還是最低級的小學奧數,,,

天吶這種題我連題解都不想寫?懶得廢這個打字的力氣×

就是|a1-x|+|a2-x|+...+|an-x|的min,,,話說這都不算是奧數了?就絕對值的幾何意義得x=a[]中位數,over

[ ]七夕祭

中位數+貪心

會寫題解的趴?因為開始並沒想到呢

又是一道連暴力都沒想出來的題目,完了最近腦子銹了什么東西都想不出來,,,葯丸葯丸QAQ

[ ]running median

對頂堆/鏈表

哇真的有趣!真的妙啊!!!不行我一定要寫博客!很妙!兩種方法都要寫!!!

[ ]第k大數

知識點

整體二分?嘛?

理解了已經,會寫博客的qwq

[ ]奇數碼問題

逆序對

之前考過一個,和這個相關的?

然后之后(比較遠了好像,,,)講A*搜索的時候會講到這題的詳細搜索怎么搞

但首先先搞定這個,記得寫博客

也是挺妙的,然后可以拓展到偶數碼和n*m數碼,但是書中好像沒有詳解,自己會推下然后結論放博客里?

[ ]一個書上的問題可能沒題目qwq

倍增

先復述題目qwq

是說有個長度為N的數列A,進行若干次詢問,每次給定一個整數T,求kmax使得a[1]+...+a[k]<=T,要求必須在線

然后會寫博客先暫時寫這兒qwq

首先顯然最簡單是前綴和+lower_bound

但是這樣子的時候如果T很小可能還不如直接從前往后枚舉優是趴

這時候就考慮,倍增

剩下的博客里面寫去,今兒只是先把目錄基本架構搭下qwq

[ ]genius acm

倍增

...好難der,,,而且我連它的第一句話都不會證明,,,哭死

所以這題題解中葯包含幾個方面

第一個是正解

然后是歸並排序優化

還一個是證明那個"顯然balabala

[ ]st算法(rmq

倍增 知識點

會寫博客的這里不說了先qwq

[ ]sunscreen

貪心

重點是要再博客中證明貪心決策正確性,希望不要看書

然后順便總結下證明貪心正確性的幾個方法?可能會另寫一篇然后舉例之類的時候就放這幾道貪心的鏈接qwq

[ ]stall reservations

貪心

同上

[ ]radar installaion

貪心

同上

[ ]國王游戲

貪心

同上

[ ]color a tree

貪心

同上

沒看懂題目QAQ先把題目看懂QAQ

[ ]一些練習(P44 45

有12道題,都還沒看,看了之后會拆成一道道的和其他一樣的性質放上來qwq

[ ]push,pop,getmin

棧 神仙想法

好晚了困死了不說了,會寫博客over

[ ]editor

對頂棧 又是個神仙

感覺自從NOIp之后就沒有腦子了?思維僵化,隨便一道題目都能卡死我,隨便一道題的解法感覺對我來說都是神仙:(

這種狀態還是布星!

但是這個我是真的覺得挺神仙的,,,雖然並沒有太仔細看,,,但是和對頂堆類似的算法一定也是神仙!over

[ ]進出棧序列問題

遞推/dp/數論

講了四個方法,一個暴力不說了,其他幾個都要落實,over

[ ]largest rectangle in a histogram

單調棧

感覺也許還能用懸線法...?布吉島我懸線法並不會來着只是做過一道題但並沒研究清楚QAQ

然后這題也很神仙,打算寫博客qwq

[ ]team queue

隊列

...我是真的葯丸了,認真的港我好擔心我現在的狀態啊QAQ

其實是道挺簡單的傻逼題?然后我是真的沒想出來???真的我現在連最暴力最傻逼的數據結構的最基礎的部分都想不到了?我怕是成普及三等獎的水平了已經QAQ

然后不難就直接寫下?就開一堆隊列,一個是存隊伍順序的,一堆是存每個隊伍中有哪些人的,然后就可以了,基礎操作走一波,結束

然后我真的沒想到,,,大概是學科限制了我的智商趴QAQ

[ ]雙端隊列

神仙思維題

不會,勉強懂了題解,要早點兒寫博客不然怕過幾天又無法理解了QAQ

挺妙的我覺得?反正我不會qwq

[ ]最大子序和

單調隊列

挺妙的 也可能是因為最近沒腦子隨便一道題都是妙妙妙好好好...

會寫博客.over

然后感覺用了一點兒單調棧的思想?umm好趴其實單調隊列單調棧啥的都是單調性的所以是共通的嘛qwq

[ ]鄰值查找

鏈表orSTL

umm,,,話說這題我並沒有理解那個鏈表做法?好迷的我覺得?為什么要刪除?什么玩意兒?真的我滿臉懵?有時間查下這個代碼學習一下,,,

大概不會打算寫博客,到時候大概就在這兒寫下?(如果,那個鏈表的方法實在太太太妙了也會寫博客的辣qwq)

[ ]hash+字符串hash

知識點

學到了,之前一直聽學長們港什么哈希啊balabala的就一直想學,發現並不難其實挺入門的...話說我是真的弱連hash都不會,,,我NOIp是真的運氣好才水到的省一QAQQQ(,,,是不是省一還不知道呢QAQQQ不是就監介辣QAQQQ)

[ ]snowflake snow snowflakes

hash

大概算是個典型hash題?因為hash是新學的知識點所以會寫博客的!

[ ]兔子與兔子

hash

這個是真的板子題,,,不寫博客辣直接模板復制粘貼過去就是?

[ ]palindrome

hash/manacher

昂hash的那個是nlogn我覺得海星了,,,簡單又好理解的×

其實都不好理解

會寫博客,兩種方法都做一次qwq

[ ]后綴數組

倍增/DC3/hash

后綴數組,又名SA,是個很重要的數據結構

所以!我們要比較熟練地掌握它的這幾種方法!

然而我目前大概只能把hash落實掉QAQ不管怎么的先mk着QAQ

[ ]KMP模式匹配

知識點

早寫了博客一直沒寫完QAQ

[ ]period

kmp

似懂非懂感覺,,,之后會寫題解的qwq

[ ]最小表示法

知識點

沒懂,先mk着qwq

[ ]前綴統計

trie樹

是板子題呢qwq不會寫題解了實在比較簡單呢qwq

[ ]the xor largest pair

trie樹

又是個板子呢,不過是最大亦或的前綴,我記得我寫過位運算的博客,到時候放上來

這個就不另寫題解辣qwq

[ ]the xor largest path

trie樹

有個對我而言還是比較妙的思想,所以大概會寫題解的qwq

[ ]二叉堆

知識點

還不會手寫二叉堆呢...要學下qwq

然后不會另外寫題解了大概,感覺沒有太大的理解難度

會把代碼放到垂死掙扎那兒大概qwq

[ ]supermarket

二叉堆/並茶幾

感覺這題長得有點兒像蔬菜那題的簡化版?好像學長確實是在講蔬菜那題的時候講到了並茶幾相關balabala的?(...雖然我並沒有看懂來着QAQ)

也是非常非常非常地妙,然而沒有很懂呢QAQ所以會寫題解的qwq

哦另外洛谷上有這題,可以去看下題解幫助理解qwq

over

[ ]數據備份

二叉堆+鏈表

!神仙做法了真的

很妙的想法

會寫題解

所以CTSC2007居然就這么難了嘛,,,哭泣QAQ

[ ]合並果子

二叉堆+貪心(也就是,haffman樹呢)

沒有太太太大難度?只是可以用haffman樹幫助理解,over

不寫題解了qwq

[ ]荷馬史詩

haffman樹

umm...沒有看懂題目TT

但是似乎是haffman樹有一定應用層面的東西了呢,所以會寫題解qwq

而且題目都沒看懂的是一定要寫題解的呢×

[ ]haffman樹

知識點

本來想着沒有太太太難不想另外寫了

想了想還是要總結一下這個知識點

大概會放在垂死掙扎里qwq

[ ]一些練習(P86 87

有13道題呢也

但是也先不會動,先把前面的都搞完再說qwq

[ ]樹與圖的遍歷

知識點

發現有挺多我還不會...基礎不牢地動山搖啊QAQ

所以會專門寫個博客

然后在考慮專門再做個圖論專題的博客總結下各個知識點匯總下題解啊學習筆記的網址

因為圖論實在太爛

煩躁QAQ

[ ]可達性統計

拓撲排序

妙的

然后還會要用到bitset就想着順便學習下bitset的用法qwq

會寫題解,over

[ ]小貓爬山

dfs

簡單題,不會寫題解的,就沖個做題量qwq

[ ]sudoku

dfs+神仙剪枝

哇這題真的是,剪枝有一大堆

而且都很妙然后很多還挺有啟發性的實用意義挺廣(后面剪枝專題還講了點兒可以合並一下qwq

真的會寫題解,剪枝太多了太牛逼了!

over

[ ]sticks

dfs+神仙剪枝

布星我發現我是真的弱?剪枝都不會?

完全想不到剪枝星人就是我了好嘛QAQ

沒了,會寫題解qwq

[ ]生日蛋糕

dfs+神仙剪枝

學長好像港過呢?然后葉佬是不是也講過這題?反正好像是主題差不多,然而題面和問題是不是一樣的我就忘了QAQ

又是個牛逼剪枝,這個大概會在過停課集訓專題的時候過掉qwq

會寫題解,over

[ ]迭代加深

知識點

這個想法還是挺妙的,寫肯定是會寫,只是在想是另外開個新的還是寫在垂死掙扎里qwq

over

[ ]addition chains

迭代加深

昂迭代加深的板子題呢,大概作為例題用掉了,不另外寫個題解辣qwq

[ ]雙向搜索

知識點

雙向搜索,和,雙向bfs不太一樣呢感覺,,,但是大概會一起寫個題解qwq

[ ]送禮物

雙向搜索

感覺這題,長得有點像之前的一道考試題?QAQ忘了什么名字了只記得是zsy學長教的神仙解法?大概被虐日常里有到時候翻下qwq

哦考試題也要整理呢QAQ

[ ]bloxorz

bfs

bfs板子題了呢,但是細節好像有點麻煩?到時候看代碼復雜度決定寫不寫題解qwq

[ ]矩陣距離

bfs

沒有想到QAQ依然生銹的腦子QAQ

所以會寫題解!

[ ]pushing boxes

bfs

開始連題解都沒看懂?然后大概看了下發現和華容道有點兒像的感覺?方法還是明白了

實現依然可能有點困難QAQ神一般的雙重bfs?

[ ]01隊列bfs

知識點

是個很妙的bfs知識點呢!之前在xzy學長的博客里看到過qwq但是沒有理解QAQ

然后現在總算明白了,還會涉及bfs的性質們呢,所以會寫題解qwq

[ ]電路維修

01序列bfs

板子題,可能直接作為知識點中的例題出現?就不另外開題解辣qwq

[ ]full tank

dij

傻逼題?不想多說qwq真·純刷個做題量qwq

[ ]雙向bfs

知識點

說好了要和雙向搜索一起寫題解,就一起寫啦qwq

[ ]nightmare II

雙向廣搜

板子?可能和前面的板子題命運一樣了趴qwq

[ ]A*搜索

知識點

一直一直一直想學,也一直一直一直在說要學

然后直到現在才學QAQ執行效率太低QAQ

不過還是get到了呢,然后關於正確性什么的還是證下,所以會寫題解qwq

[ ]第K短路

[ ]八數碼eight

[ ]康拓展開

[ ]IDA*

[ ]the rotation game

[ ]booksort

[ ]square destroyer

[ ]練習P128.129

[ ]程序自動分析

[ ]supermarket

[ ]銀河英雄傳說

[ ]parity game

[ ]拓展域並查集 戴荃帶權並查集

[ ]食物鏈

[ ]樓蘭圖騰

[ ]a tiny promblem with integers

[ ]a simple promblem with integers

[ ]lost cow

[ ]interval gcd

[ ]掃描線

[ ]atlantis

[ ]stars in your window

[ ]分塊

[ ]蒲公英

[ ]磁力快

[ ]莫隊

[ ]小z的襪子

[ ]點分治

[ ]tree

[ ]二叉查找樹bst

[ ]平衡樹treap

[ ]普通平衡樹

[ ]cdq分治

[ ]天使玩偶

[ ]整體分治

[ ]k-th number

[ ]可持久化trie

[ ]最大異或和

[ ]可持久化線段樹(主席樹)

[ ]

[ ]

[ ]

[ ]

[ ]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM