iOS 自定義導航轉場:CATransition 實現 Push 動畫
需求背景 在 iOS 開發中,預設的 UINavigationController push/pop 動畫較為固定。若需實現自定義轉場效果(如從右側推入、淡入淡
POJ 3352 無向圖邊雙連通分量縮點樹與加邊最少數
問題重述 給定無向圖(可能不連通),包含 N 個頂點、M 條邊(無重邊)。求最少需要增加多少條邊,使整個圖變為邊雙連通(即無橋、邊連通度 ≥ 2)。 核心理論
POJ 1151 Atlantis 矩形面積并:掃描線 + 線段樹詳解
題目大意 給定 N 個矩形(N ≤ 100),座標為實數。求這些矩形聯集的總面積。經典的「矩形面積并」問題,標準解法為掃描線 + 線段樹配合座標離散化。 核心
POJ 1562:Oil Deposits - DFS 八連通分量計數
題目大意 給定 m×n 網格 (m,n ≤ 100),* 為無油,@ 為油袋。八方向 (含對角線) 相鄰的 @ 屬同一油田。求油田總數。多組測資,m=0 結束。
POJ 1036:DP + 離散化時間 - 混混守門問題
問題重述 門有堅毅度 0~K。時間 1~T (T ≤ 30000) 有 N (≤100) 個混混到達,每個有時間 t、幸運值 p、堅毅度 s。若門當前堅毅度等於
HDU 2612:Find a way - 雙向 BFS / 優先隊列求會合點
題目大意 網格地圖包含起點 Y、終點 M、會合點 @、障礙 #。兩人從 Y、M 出發,尋找一個 @ 使 dist(Y, @) + dist(M, @) 最小,輸
POJ 3694:LCA 動態維護橋邊 - Tarjan 縮點 + LCA 刪除橋
問題大意 給定無向圖 (N 點, M 邊),初始求出所有橋 (割邊)。然後 Q 次詢問,每次在兩點間加一條邊,輸出當前剩餘橋的數量。加邊可能使原本的橋不再是橋(
8051 汇编/C:數碼管動態顯示與 a++ / ++b 差異演示
代碼功能 使用 8051 (AT89C52) 控制兩位共陽數碼管動態掃描顯示。利用 a++ (後置遞增) 與 ++b (前置遞增) 的差異,觀察顯示數值變化。
HDU 1863:暢通工程 - Prim 算法求最小生成樹
問題描述 給定 n 條邊,m 個節點(編號 1~m),邊權為建設成本。求連通所有節點的最小總成本。若無法連通輸出 ?。多組測資,n=0 結束。 Prim 算法
HDU 2822:Dogs - 優先隊列 (Dijkstra) 求最短路
題目轉化 給定 n×m 網格,. 為路,起點與終點座標給定(1-based)。移動代價:普通路徑代價 1,其他地形(題目隱含)可能不同。實際為求最短路徑步數,邊
POJ 1742:Coins - 多重背包優化 (O(n*m))
題目大意 有 n 種硬幣,面值 A[i],數量 C[i]。求能湊出的 1~m 之間的金額種數(m ≤ 100000)。多組測資,n=0,m=0 結束。 優化思
HDU 2025:查找最大字母並插入 "(max)"
題目要求 讀取多行字串(僅含字母,長度 ≤ 100),找出每行中 ASCII 碼最大的字母(區分大小小,Z < a),在該字母每次出現的後面插入子串 (m
8051 單片機 UART 串口發送/接收/初始化代碼範例
串口發送函數 逐字元發送字串,發送前關中斷,發送後關中斷(原碼註釋)。輪詢 TI 標誌等待發送完成。 void sendChar(char *p) {
HDU 1789:Doing Homework Again - 貪心策略最小化罰分
問題重述 有 n 項作業,每項有截止日期 dl 與罰分 pun。若作業在截止日期後完成,每超一天扣 1 分(本題簡化為:超過截止日期即罰 pun,不計天數)。每
HDU 1429:勝利大逃亡(續) - BFS + 狀態壓縮鑰匙
題目概覽 Ignatius 被關在 n×m 地牢(n,m ≤ 20)中,有牆壁(*)、道路(.)、起點(@)、出口(^)、門(A~J)與對應鑰匙(a~j)。每分
HDU 2689:Sort it - 樹狀數組求逆序數
題目轉化 給定 1~n 的一個排列,只能交換相鄰元素,求排序為升序所需的最少交換次數。這等價於求排列的逆序數:即滿足 i < j 且 a[i] >
冒泡排序詳解:原理、複雜度、優化與無臨時變量交換
為什麼叫「冒泡」? 如同池塘底部的氣泡逐漸上浮並變大,冒泡排序每輪將最大(或最小)元素「浮」至序列末端。名稱形象地描述了最大元素逐步移動到最右側的過程。 基本