2020年4月26日訓練日記

01bfs可以O(V+E)求解邊權全爲1的圖上最短路。
而當邊權只有0或1時,使用其它最短路算法是有些浪費的,此時可以使用bfs的變種:0-1 bfs來快速求解,複雜度仍爲O(V+E).

01bfs維護一個雙端隊列,當邊權爲0時,使用push_front,當邊權爲1時,使用push_back.

資料摘自: https://blog.csdn.net/m0_37809890/article/details/83109136

練習題:https://codeforces.com/contest/1341/problem/E

題目中每個帶符號的句子都要把意思讀對。

正向思考,反向思考都要嘗試一下。

注意邊界處理,一些特殊判斷。

O(n^2)級別的dp,要想到,區間可以O(1)轉移的區間dp。

內存不夠時,考慮用vector代替數組。

存圖時,鏈式前向星的內存和時間都優於vector

multiset中的erase函數會移除所有值爲x的數,刪除一個x用迭代器it=st.find(x) st.erase(it)

打表找規律時,不要侷限於十進制表。

做構造題時,可以先構造規模較小的答案(打表,手撕,樣例),然後把規模較大的往這個規模較小的答案轉化。

x不斷除以它的質因子,直到變成1 的方案數爲x的質因子的冪次之和的階乘 除以 x的每個質因子的冪次的階乘之積。

別人鬆懈的時候,就是我們超越他們的時候。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章