兩種做法
1.拆位後把=1的轉換為區間賦值,=0的貪心的轉換為區間詢問check用差分和字首和實現即可
2.把所有限制轉換為區間或,然後再檢查一遍所以限制是否滿足,線段樹維護即可
\[\\
\]顯然可以考慮維護0時刻從每個路口到達終點需要多久
這個玩意dp的話發現轉移的時候需要找到最近的被紅燈攔下的點
然後寫一下式子的話發現就是
\[(s_k-s_i) \ \ mod \ \ mo>=g
\\其中mo=g+r
\]對於這種同餘不等式
\(s_k\)的範圍顯然可以拆成兩個區間的形式
因此我們只需要倒序dp
然後用線段樹快速找出指定區間中編號最小的路口進行轉移即可
對於每一次詢問也是同理
也是快速找出第一次會在什麼位置被攔下即可
分塊莫隊
其它
資料結構學習筆記
資料結構概述 定義我們如何把現實中大量而複雜的問題以特定的資料型別和特定的儲存結構 儲存到主儲存器 記憶體 中,以及在此基礎上為實現某個功能 比如查詢摸個 元素,刪除某個元素,對所有元素進行排序 而執行的相應操作,這個相應 的操作也叫演算法 資料結構 個體 個體的關係 演算法 對儲存資料的操作 演算...
資料結構學習筆記
資料結構學習筆記 程式 資料結構 演算法 資料結構 資料 結構 結構的本質是關係 資料之間的關係從不通風層面上分為邏輯關係和物理關係 演算法的設計要依據資料的邏輯關係 演算法的實現要依據資料的物理關係 物理關係是邏輯關係的基礎和載體 演算法實現時需要先依據問題抽象出資料模型,即初步確定待處理資料的邏...
資料結構 學習筆記
一 鍊錶 1 基本特徵 記憶體節點是不連續的,節點之間通過指標彼此關聯。2 基本操作 追加 插入 刪除 遍歷 偽隨機訪問!3 實現要點 1 追加 新建節點存放資料,令新節點的前指標指向當前尾節點,新節點的後指標為null,令當前尾節點的後指標指向新節點,尾指標指向新節點。考慮在空煉表中追加第乙個節點...