Java 遞歸統計源代碼文件夾行數:遍歷子目錄、過濾 .java、BufferedReader 讀取
需求 給定根目錄路徑,遞歸遍歷所有子目錄,統計所有 .java 文件的總行數。 核心類設計 LineCounter:主入口,調用遞歸方法並輸出結果。 Fil
HDU 3037 Saving Beans:Lucas 定理計算大組合數模質數
問題描述 計算 C(n+m, m) mod p,其中 n, m ≤ 2^63-1,p ≤ 110000(質數)。多組測資 T 直到 EOF。 Lucas 定理
HDU 5053 The Sum of Cube:區間立方和求和(預處理前綴和)
問題描述 給定 T (≤1000) 組測資,每組給區間 [A, B] (1 ≤ A ≤ B ≤ 10000),求 Σ_{i=A}^B i^3。輸出格式 Case
POJ 1390 Blocks:經典區間 DP 方塊消除遊戲
問題描述 一排 n (≤200) 個彩色方塊,相鄰同色形成「段」。每次點擊一段消除,得分 = 段長度平方。消除後左右合併,可能形成新段。求最大總分。多組測資。
BZOJ 3282 Tree:Link-Cut Tree 維護動態樹異或路徑查詢
問題描述 維護一棵動態森林,支持四種操作(節點數 ≤ 300000): Query x y:詢問路徑 x-y 上所有節點值的異或和 Link x y:連接 x
C++ JSON 庫 jsoncpp 避坑指南:Assert 崩潰、數組訪問、類型轉換與嚴格模式
背景 jsoncpp 是 C++ 常用 JSON 庫,但其錯誤處理機制依賴 assert,在 Linux 下觸發會調用 abort() 導致進程崩潰(收到 SI
BZOJ 2049 Cave:Link-Cut Tree 動態維護圖連通性
問題描述 初始有 N 個孤立節點(洞穴)。支持三種操作: Connect x y:添加無向邊 (x,y) Destroy x y:刪除無向邊 (x,y) Qu
HDU 4362 Dragon Ball:線段樹優化 DP 解決多階段決策問題
問題描述 有 n 層,每層 m 個位置,每個位置有坐標 pos 和代價 cos。從第 0 層起始位置 st 出發,每層必須選一個位置,移動代價為曼哈頓距離 |p
POJ 2240 Arbitrage:貨幣套利檢測(Floyd / Bellman-Ford 判正環)
問題描述 給定 n (≤30) 種貨幣及 m 條匯率邊(有向,權重為匯率)。判斷是否存在一條循環路徑,使得起始貨幣經過兌換後數量增值 1)。多組測資,n=0 結
整數與羅馬數字互轉:C 語言實現(無 Map、純 Switch/數組查表)
背景 LeetCode 第 13 題(整數轉羅馬數字)與第 14 題(羅馬數字轉整數),範圍均為 1~3999。本文提供不使用 map/unordered_ma
HDU 5051 Fraction:Benford 定律與等比數列首位數字分布
問題描述 給定整數 n, b, q (1 ≤ n,b,q ≤ 1000)。等比數列 a_i = b * q^i (i ≥ 0)。求當 m→∞ 時,前 m 項中以
HDU 2089 不要 62:數位 DP 統計不含 4 和 62 的數字個數
問題描述 統計區間 [n, m] (0 < n ≤ m < 1,000,000) 中不包含數字 4、也不包含連續子序列 62的整數個數。多組測資,以 0 0 結
C++ Vector 容器手寫實現:內存管理、迭代器與擴容機制
實現目標 從零手寫一個符合 STL 風格的 Vector<T>,涵蓋: 動態數組內存管理(分配/釋放/擴容) 元素構造/析構/拷貝/移動語義 迭代
HDU 5056 Boring Count:滑動窗口統計合法子串
問題描述 給定小寫字母串 S (|S| ≤ 100000) 和整數 K (≤ 100000),統計子串中每個字母出現次數均不超過 K的子串個數。多組測資 T ≤
SPOJ 104 Highways:基於 Kirchhoff 矩陣樹定理的生成樹計數
問題描述 給定 n (≤12) 個城市及可建設的高速公路邊,計算有多少種不同的建設方案,使得任意兩城市間恰好有一條路徑(即生成樹個數)。多組測資。 核心理論:
NYoj 1078 漢諾塔(四):規律、暴力模擬與二分圖匹配三解法
問題描述 有無限多個球,依次編號 1,2,3...。有若干根桿子,每次將最小編號的球放到某根桿子上,要求桿子上球的編號之和為完全平方數。求第 n 個球最多能放到
LeetCode Swap Nodes in Pairs:鏈表成對交換遞歸與迭代解法
問題描述 給定單鏈表,將相鄰節點成對交換,返回新頭節點。要求 O(1) 額外空間,不可修改節點值,只能調整指針。 例如:1→2→3→4 → 2→1→4→3。