AtCoder 🟣 ABC436G Linear Inequation
結合數位 DP 與背包問題。將變數二進位拆分,逐層進行 0/1 背包,利用層間進位壓縮狀態,解決 M 極大的線性不等式計數。
AtCoder 🟠 ABC436B Magic Square
構造奇數階魔方陣的 Siamese 方法及其正確性證明。
AtCoder 🟠 ABC436C 2x2 Placing
模擬放置 2x2 方塊。因 N 很大,無法建立二維陣列,改用 Hash Set 記錄已佔用座標。每次操作檢查目標 4 格是否衝突。
AtCoder 🟡 ABC436D Teleport Maze
利用 BFS 求解網格最短路徑,特殊處理傳送門機制,確保每種字母的傳送僅被觸發一次以優化時間複雜度。
AtCoder 🟢 ABC436E Minimum Swap
利用置換環的性質,計算每個環的大小即可。
AtCoder 🟢 ABC436F Starry Landscape Photo
枚舉最大亮度星星,利用 BIT 統計左右側亮度小於等於該值的數量,相乘累加即為答案。
AtCoder 🟢 ABC437F Manhattan Christmas Tree 2
利用曼哈頓距離轉切比雪夫距離的性質,透過線段樹維護 X+Y 與 X-Y 的極值來處理動態區間最遠曼哈頓距離查詢。
AtCoder 🟡 ABC437E Sort Arrays
建立 Trie 儲存序列生成過程,利用 DFS 前序遍歷並對子節點邊權排序,即可獲得字典序排列。
AtCoder 🟡 ABC437D Sum of Differences
利用排序與前綴和,將絕對值總和問題轉化為區間和計算,快速求解兩數列間所有元素差值總和。
AtCoder 🟠 ABC437C Reindeer and Sleigh 2
反悔貪心。將條件轉換為全體力量總和需大於等於乘坐者的 (W+P) 總和,轉化為簡單的排序貪心問題。
AtCoder 🔵 AISING2020E Camel Train
有 N 隻駱駝排成一列,若在前 K_i 個位置則幸福值為 L_i,否則為 R_i。透過交換論證將駱駝分為偏好前方與偏好後方兩組,再以反悔貪心(最小堆積)決定選取哪些差值,最大化總幸福值。
AtCoder 🔵 ABC389F Rated Range
有 N 場比賽,rating 在 [L_i, R_i] 內則 +1。Q 筆查詢初始 rating X 的最終值。利用 f(j) 的單調性搭配懶標記線段樹做區間加法與二分定位,O((N+Q) log X)。
AtCoder Beginner Contest 389 解題紀錄 (A - F)
Problem solving record for AtCoder Beginner Contest 389.
AtCoder 🟡 ABC389D Squares in Circle
計算有多少個單位正方形能完全落在半徑 R 的圓內,利用對稱性與雙指標的單調性在 O(R) 時間內求解。
AtCoder 🔵 ABC389E Square Price
有 N 種產品,購買 k 單位第 i 種產品花費 k²×P_i,總預算 M,求最多可購買的總單位數。關鍵在於將非線性定價轉為邊際成本,利用單調性進行二分答案。














