傳球遊戲(矩陣快速冪):K 人 N 次傳球回到起點方案數
傳球遊戲:矩陣快速冪求解 K 人 N 次傳球方案數 問題描述:K (3≤K≤10⁹) 人圍圈傳球,初始球在甲手中(第 1 次傳球為甲發出)。每人接球必須立即傳給
C++ 循環輸出失效?一行代碼揭示經典邏輯坑
C++ 循環輸出失效?一行代碼揭示經典邏輯坑 初學者常見錯誤:在 while(n--) 循環中消耗了變量 n,導致後續 for(int i=0; i<n;
取整數後 n-1 位:字符串處理與數學方法對比
問題描述 給定無符號整數 w (10 < w ≤ 1,000,000),設 w 為 n 位數 (n ≥ 2),求 w 的後 n-1 位組成的數(忽略前導 0,若
老菜鳥的青春告白:程序員該選 Java 還是 C#?
老菜鳥的青春告白:程序員該選 Java 還是 C#? 這不是一篇技術對比文,而是一段關於選擇、執著與成長的真實敘事。作者從高考失利調劑到中科大軟件學院,憑直覺選
Kapok:輕量級 C++11 序列化庫,Header-Only、高效、無侵入
Kapok 簡介 Kapok 是一個基於 C++11 的序列化/反序列化庫,特點: **Header-Only**:只需包含 `Kapok.hpp`,無需鏈接
眾數問題:多測試案例下的頻率統計與常見 Bug 分析
題目描述 給定 n 組測試數據,每組 m (≤100) 個不超過 100,000 的自然數,求眾數(出現次數最多的數)及其重數(出現次數)。保證眾數唯一。 正
最大全 1 子矩陣:直方圖法與單調棧優化 (九度 OJ 1497)
問題描述 給定 M×N 的 0/1 矩陣,找出面積最大的全 1 子矩陣(面積 = 1 的個數)。M, N ≤ 1000。 核心思想:行轉直方圖 + 單調棧
HDU 3613 Best Reward:Extended KMP 解決項鍊切割回文問題
題目大意 給定一條由 26 種寶石組成的項鍊(長度 ≤ 500,000),每種寶石有價值(可正可負)。需將項鍊切成兩段,使兩段回文子串的價值之和最大。非回文段價
C++ 共用體 詳解:節省內存的多態存儲利器
什麼是共用體 共用體 是一種特殊的類類型,它允許在同一塊內存空間存儲不同類型的數據(但同一時刻只能存儲其中一個)。其大小等於最大成員的大小。 基本聲明與使用
子集和問題優化實戰:從 200 秒到 0.4 秒的 DFS 剪枝之路
問題描述 給定 n (≤40) 個正整數和目標值 H (≤1e9),判斷是否存在子集和等於 H。這是典型的 NP-Complete 子集和問題,但 n=40 允
LeetCode 124 二叉樹最大路徑和:遞歸後序遍歷解法
題目描述 給定一棵二叉樹,找出最大路徑和。路徑可從任意節點開始,到任意節點結束,但每個節點在路徑中最多出現一次。路徑至少包含一個節點。 核心思路:後序遍歷 +
HDU 1272 小希的迷宮:並查集判斷樹結構
題目背景 HDU 1272《小希的迷宮》是一道經典的並查集應用題。小希設計迷宮的規則是:所有通道雙向連通,且任意兩個房間有且僅有一條路徑相通(不走回頭路)。這本
x264 源代碼分析:命令行工具 x264.exe 核心流程詳解
概述 x264 是開源 H.264/AVC 視頻編碼器庫。其命令行工具 x264.exe 位於專案根目錄,負責解析參數、讀取 YUV 數據、調用 libx264
ZOJ 2853 Evolution:矩陣快速冪求線性遞推第 n 項
題目大意(重構) 給定線性遞推關係:F(n) = Σ_{i=1}^k c_i * F(n-i)。求 F(n) mod M。 k ≤ 10, n ≤ 10^9,
Codeforces 302 Div2 D Destroying Roads:最短路 + 枚舉公共路段優化
題目大意 無向無權圖(N ≤ 3000, M ≤ N(N-1)/2)。需保留若干邊,使 s1→t1 最短路 ≤ l1,且 s2→t2 最短路 ≤ l2。求最多可
FZU 2192 種類並查集:城市-服務-人三層關係建模
題目大意(重構) 有城市、服務、人三類實體。操作:合併城市與服務、服務與人。查詢:某人屬於哪個城市(輸出城市編號,無則 0)。 實體總數大,但操作數 Q 較小。
POJ 3186 区間 DP:從兩端取數最大化加權和
題目大意 給定長度 N 的數列 a[1..N]。每次從左端或右端取一個數,第 i 次取出的數乘以 i 計分。求最大總分。 N ≤ 2000。 DP 狀態定義
Codeforces Round #167 Div1 B:排序 + 分組計數 + 組合數學取模
題目大意(重構) 給定 2n 個點 (x_i, y_i),其中 x_i 為輸入值,y_i = i % n。對 x 排序。相同 x 形成一組,組內按 y 排序。