POJ 2778 DNA Sequence:AC 自動機 + DP + 矩陣快速冪
題目大意 給定 m 個禁止模式串(長度 ≤ 10,只含 A/C/T/G),求長度為 n 的合法 DNA 序列數(不含任何禁止模式),答案模 100000。n 可
C++ 斐波那契數列生成三法:標準迭代、雙步優化與遞歸對比
數列定義回顧 斐波那契數列:F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2) (n≥2) 前 20 項:0, 1, 1, 2, 3, 5,
BZOJ 1934 [Shoi2007] Vote 善意的投票:最小割建模詳解
題目大意 n 個小朋友(n ≤ 300)投票決定是否午睡。每人有初始傾向(0 反對,1 贊成)。m 對好友關係。沖突數 = 好友間投票不同的對數 + 與自己初始
整數因子分解計數:遞歸算法求有序因子分解方案數
問題描述 給定正整數 1),求將其分解為若干個大於 1 的整數乘積的有序方案數。例如 n=12 有 8 種:12, 6×2, 4×3, 3×4, 3×2×2,
Codeforces 3A - Shortest Path of the King:國王最短路徑 BFS 解法
題目大意 標準 8×8 國際象棋棋盤,給定起始格 (如 a1) 和目標格 (如 h8)。國王每步可移動到 8 個相鄰格子(含對角線)。求最少步數及任意一條最短路
C++ 對象 JSON 序列化與反序列化探索:基於 JsonCpp 的反射式實現
背景與痛點 C++ 缺乏原生反射,導致對象序列化/反序列化(如 JSON)極其繁瑣:每增減一個字段都要手動修改讀寫代碼。本文探索一種基類註冊屬性地址 + Jso
Codeforces 2B The Least Round Way:DP 最小化尾隨零 + 零值格子特判
題目大意 n×n 網格,每格一個非負整數。從左上角 (0,0) 走到右下角 (n-1,n-1),只能向右或向下。路徑上所有數字相乘,求乘積末尾 0 的最小個數,
POJ 2406 Power Strings:後綴數組 DC3 + LCP 求最大重複次數
問題描述 給定字符串 s(長度 ≤ 1,000,000),已知 s = a^n(某字符串 a 重複 n 次),求最大的 n。輸入以單獨一行 . 結束。 解法:
Linux `ls` 命令核心邏輯 C 實現:目錄遍歷與文件屬性顯示
程序功能 模擬 Linux ls -l 基本功能:讀取指定目錄(默認當前目錄),對每個條目調用 stat 獲取元數據,格式化輸出權限、鏈接數、擁有者/組、大小、
RTSP 協議消息組裝實戰:C++ 客戶端請求構建詳解
背景 RTSP (Real Time Streaming Protocol) 是流媒體控制協議,客戶端與服務端通過請求/響應消息交互。本文整理了一套 C++ 實
UVA 10308 - Roads in the North:樹的直徑 DP 解法
題目大意 給定一棵無根樹(邊帶權),求樹的直徑,即任意兩點間最長路徑長度。輸入多組測試數據,每組以空行分隔,EOF 結束。 解題思路:樹形 DP 對於每個節點
設計模式詳解:策略模式 (Strategy Pattern)
什麼是策略模式? 策略模式屬於對象行為型模式。其核心意圖是:定義一系列算法,將每個算法封裝起來,並使它們可相互替換。這樣算法的變化不會影響使用算法的客戶端。
不使用第三個變量交換兩數的三種算法詳解
前言 交換兩個變量值是程式設計基礎操作。標準做法引入臨時變量 t,雖然清晰但佔用額外空間。本文介紹三種無需臨時變量的交換技巧:算術運算法(兩種變體)與位運算異或
A* 算法路徑優化:分段重搜策略與 SearchEx 實現
動機 標準 A* 算法在開放列表中選取 f 值最小的節點擴展,雖能保證找到最短路徑,但生成的路徑往往包含許多細小轉彎,不夠平滑。本文提出一種分段重搜優化策略:將
Codeforces 316C2 Tidying Up:二分圖最小費用最大流解法
題目背景 Codeforces 316C2 Tidying Up:給定 n×m 網格,每個格子有一雙鞋(編號 1 到 nm/2,每號恰好出現兩次)。目標是讓每雙
HDU 2612 Find a Way:雙向 BFS 尋找最短會合時間
題目概述 HDU 2612 Find a Way 要求從兩個起點(Y 和 M)同時出發,在迷宮中尋找一個可到達的會合點(@),使得兩人到達該點的時間總和最小。迷
BZOJ 3218 a + b Problem:二分圖最小割 + 主席樹(值域線段樹)優化建圖
問題背景 給定 n 組六元組 (a, b, w, l, r, p)。需選擇一個整數 x,對每組可選: 支付 b 獲得 a(若 x = a) 支付 w 獲得 a
C++ 獲取文件大小的 4 種經典方法:從標準庫到系統 API
方法對比概覽 方法頭文件關鍵函數/類適用場景備註 1. _stat<sys/stat.h>_stat(), st_size跨平台標準 C,無需打開