LeetCode 9. Count and Say:外觀數列迭代生成
題目大意 「外觀數列」遞歸定義: countAndSay(1) = 1 countAndSay(n) 是對 countAndSay(n-1) 的「讀法」:連續
貪心算法經典:活動選擇問題(CLRS 第 16 章)
問題描述 給定 n 個活動,每個有開始時間 s[i] 和結束時間 f[i](已按結束時間升序排序)。選擇最大兼容子集(無時間重疊)。 貪心策略 總是選擇最早結
Qt 線程池 + TCP 服務器實戰(三):任務分發與大小寫轉換演示
架構概覽 整合 QThreadPool 與自定義 TcpService,實現高併發 TCP 服務器: 主線程監聽端口,新連接建立 QTcpSocket。 數據
URAL 1010 離散函數最大傾角:相鄰點差值即解
問題理解 給定離散函數 f(1), f(2), ..., f(N)(N ≤ 100,000),找兩點 (i, f(i))、(j, f(j))(i < j)
Qt QTableWidget 單元格按鍵攔截與重寫:事件過濾器實戰
需求場景 在 QTableWidget 中攔截特定按鍵(如 A),將其替換為另一按鍵(如 B)繼續分發,實現自定義鍵盤映射。 核心技術:事件過濾器 在 QOb
POJ 3414 雙燒杯量水:BFS 狀態空間搜索與路徑重構
問題描述 兩燒杯容量 A, B,初始皆空。允許操作: FILL(1) / FILL(2) 裝滿 DROP(1) / DROP(2) 清空 POUR(1,2)
POJ 1699 字符串覆蓋:狀態壓縮 DP + KMP 計算重疊
問題描述 給定 n (≤ 15) 個字符串,構造最短字符串使每個給定串均為其子串。輸出最短長度。 解題步驟 預處理重疊:對每對串 (i, j),用 KMP
POJ 2373 噴灑系統:線段樹與單調隊列優化 DP
問題建模 長度 L (≤ 1e6) 草地安裝噴頭,噴灑半徑可調 [a, b],噴頭以自身為中心向兩側噴灑。要求: 每點被且僅被一個噴頭覆蓋(無重疊、無遺漏)。
HDOJ 3537 Daizhenyang's Coin:Mock Turtles 翻硬幣遊戲 SG 函數規律
遊戲規則 一排硬幣,每次可翻 1~3 枚硬幣(必須包含最右邊的正面硬幣)。初始第 i 枚硬幣正面朝上。求先手勝負(SG 函數異或和為 0 先手負)。 SG 函
C++ 內存洩漏經典場景:循環中反覆 new 卻不 delete
問題代碼 int* GetVal() { int* nVal = new int(6); return nVal; // 返回堆內存指針 }
POJ 2400 KM 算法求最小權匹配並回溯輸出所有最優方案
問題概況 給定 n×n 代價矩陣,求最小權完美匹配(指派問題),並輸出所有達到最小總代價的匹配方案。n ≤ 20,方案數可能較多。 算法架構 KM 算法(K
POJ 2993 國際象棋盤面還原:逆向解析 FEN 類字符串
問題背景 POJ 2996 輸出棋盤 ASCII 圖,本題給出該輸出(白方/黑方棋子列表),要求還原棋盤 ASCII 圖。輸入格式如: White: Ke1,Q
POJ 3083 迷宮路徑:左手/右手規則與 BFS 最短路徑
問題描述 給定迷宮(入口 S、出口 E、牆壁 #、空地 .),求三種路徑長度: 沿最左邊牆壁行走(左手規則)。 沿最右邊牆壁行走(右手規則)。 最短路徑長度。
POJ 2363 Blocks:最小表面積長方體堆疊
問題重述 給定 N (≤ 1000) 個 1×1×1 立方體積木,將其堆疊成一個長方體(邊長為整數),求包裹該長方體所需的最小紙張面積(即長方體表面積)。多組測
微軟面試題:億級整數文件排序——位圖法詳解
問題描述 給定一個包含 10^7 個不重複整數的大文件,整數範圍在 0 ~ 10^7-1 之間,要求將其排序並輸出到另一文件。內存有限,無法一次性讀入所有數據。
C++ 輸入輸出流應用實例:文件複製與字符過濾
概述 本文展示一個完整的 C++ 類 Copy_file,演示如何使用 fstream 進行二進制文件讀寫、構造/析構函數管理資源、以及簡單的字符過濾邏輯(僅複