多執行緒 IndexOutOfRangeException:Dictionary/Queue/List 即使加鎖仍報錯的根因與排查
現象 多執行緒操作 `Dictionary`、`Queue`、`List`,各自加了 `static lock`(不同鎖),仍偶發 `System.IndexO
烘乾衣物最短時間:輻射器加速單件烘乾的貪心策略
問題描述 n (≤100,000) 件衣物,含水量 a_i (≤1e9)。自然乾燥:每分鐘每件 -1。輻射器:每分鐘選 1 件額外 -k (k≤1e9,不低於
MyBatis 同一 Service 多次呼叫 DAO:同一線程複用資料庫連線
問題 Service 層同一線程多次呼叫 DAO 方法,會建立幾次資料庫連線? 答案 只建立一次連線(從連線池取得),並在事務結束時歸還。 原理 MyBati
C 語言指標越界錯誤:start/end 未分配記憶體導致
問題現象 程式運行時發生越界/段錯誤,圖片顯示 start 和 end 指標為空/未初始化。 根本原因 start 和 end 宣告為指標但未分配記憶體(無
演算法題:Blast the Enemy! 多邊形質心計算(遊戲機器人弱點)
問題描述 給定簡單多邊形頂點(順/逆時針),均勻密度,求質心(幾何中心)座標,輸出小數點後 6 位。 公式推導 多邊形面積 A 與質心 (Cx, Cy): A
繪圖著色順序:整行/整列單色填滿的拓撲排序
問題描述 m×n 畫板 (≤100×100),每格有顏色編號 (正整數 <10000)。每步選一個顏色,填滿整行或整列。後填蓋過前填。求一個顏色使用順序,使最終
流水作業調度:Johnson 規則而非回溯法可得最優解
問題背景 n 項作業在兩機器流水線 M1→M2 加工,時間分別為 a_i, b_i。求加工順序使總完工時間 (makespan) 最小。輸入範例 5 項作業,輸
C 語言十六進制賦值:GetWindowText 取得字串轉 DWORD 需用字串轉換函數
問題現象 用 `GetWindowText` 從 RichEdit 2.0 取得文字 1111 存入 `DWORD dwCount`,結果存入的是 ASCII
潘多拉星球病毒掃描:壓縮程式碼中的子字串匹配(含反向)
問題描述 給定 n (≤250) 個病毒特徵串(大寫字母,長度 ≤1000)與一個程式碼(長度 ≤5,100,000,含壓縮格式 `[qx]` 表示 q 個字元
演算法題:Selecting Courses 課程選擇最大化(5 分鐘嘗試間隔)
問題描述 N 門課,第 i 門可選時間區間 (A_i, B_i)(開區間)。學生每 5 分鐘嘗試選課一次,起始時間可任意(如 5:21, 10:21...)。同
企業級應用數位憑證申請流程:從 CA 獲取根憑證再自行簽發
問題背景 開發企業級應用需使用數位憑證進行身份驗證/加密。書中提到憑證由 CA (Certificate Authority) 頒發。如何獲取? 標準流程 向
火柴棒算式修正:移動一根火柴恢復正確等式
問題描述 錯誤等式形如 A + B = C,數字由火柴棒組成(標準七段碼)。有人移動了恰好一根火柴(非拿走),導致等式錯誤。已知原等式唯一。輸入錯誤等式 (≤1
隊列可見對數:安排身高互不相同的孩子使恰好 m 對可見
問題描述 n (≤80) 個身高互不相同的孩子排隊。兩孩子可見當且僅當他們之間沒有孩子,或中間所有孩子矮於他們兩人。求排列數使恰好有 m (≤10000) 對可
道路整平:最小成本使海拔單調(非遞增或非遞減)
問題描述 給定 N (≤2000) 個海拔 A_i (≤1e9)。調整為單調序列 B_i (非遞增或非遞減),最小化 Σ|A_i - B_i|。輸出最小成本。3
線段遊戲:最大不平行線段數等於不同斜率數
問題描述 給定 N (≤200) 個格點,任選兩點連線,但不能畫與已有線段平行的線。求最多能畫多少條線。即求所有點對決定的不同斜率數量(含垂直線斜率無窮大)。
二進位字串擴展求模零:插入 0/1 使結果能被 K 整除
問題描述 給定二進位字串 S (長度 ≤20,無前導零) 與 K (≤200)。可在 S 任意位置插入任意多個 0/1,得到新字串 T(視為二進位數),要求 T
翻轉遊戲:最少翻轉次數使所有磚塊白面朝上
問題描述 M×N 網格 (≤15×15),每格黑(1)或白(0)。翻轉某格會同時翻轉其上下左右四鄰格(自身也翻)。求最少翻轉次數使全白,並輸出字典序最小的翻轉方