進制轉換完全攻略:任意 2~16 進制非負整數互轉(九度 OJ 1044)
題目需求 給定三個整數 a, n, b:n 是 a 進制數(2 ≤ a ≤ 16),要求轉換為 b 進制輸出(2 ≤ b ≤ 16)。輸入可能包含前導零,輸出字
ZOJ 2634 Collecting Stones:8×8 棋盤石頭收集的 DFS 剪枝解法
題目大意 在一張 8×8 的棋盤上,每個格子含有不超過 2,000,001 顆石頭。從 (1,1) 起點出發,必須走到終點 (8,8)。移動規則:不能重複經過同
C++ 控制結構完整指南:從基礎語句到進階流程控制
C++ 控制結構核心概念 在 C++ 程式設計中,控制結構是決定程式執行流程的關鍵機制。透過流程圖工具,我們能以直觀、準確的方式描述演算法邏輯。本文將系統性地介
演算法筆記:最大子段和、最大子矩陣和、最大 m 子段和完整推導與優化
1. 最大子段和 枚舉法 O(n³) → 優化 O(n²) 固定左端點,右端點擴展時累加避免重複求和。 分治法 O(n log n) 分左右半部,跨中間最大和
字串內部排序:天勤 OJ 1115 qsort 快速實現
題目大意 輸入字串(長度 ≤ 200,多行至 EOF),輸出字符按 ASCII 升序排序後的字串。樣例:tianqin → aiinnqt。 解法 直接對字元
Codeforces #179 Div2 A/B 題解:螺旋路徑轉彎數與滑動窗口最長子段
A 題:螺旋走到 (x,y) 需幾次轉彎 從 (0,0) 開始,按右→上→左→下→右... 螺旋擴展,每段長度 1,1,2,2,3,3... 判斷目標點落在哪一
大整數加法實現:九度 OJ 60 字串模擬逐位相加
題目要求 兩個不超過 1000 位的非負整數相加,多組測試數據至 EOF,輸出和。 模擬豎式加法 字串反向或從末尾向前遍歷,對應位相加並處理進位。 長度不等
Hadoop C++ MapReduce 實戰備忘:WordCount 完整部署流程
環境版本 Ubuntu 10.04、JDK 1.6.0_18、Hadoop 0.21.0(版本必須匹配,新版目錄結構不同)。 關鍵配置步驟 安裝 JDK、H
ACM-ICPC 2011 ACRC G - GRE Words:AC 自動機與後綴數組雙解 DP 優化
問題建模 N 個單詞(總長 ≤ 300k),每詞有權值 W。選子序列使前一詞是後一詞的子串,最大化權值和。DP:f[i] = max(f[j] + w[i])
C++ STL 六大基礎容器特性對比與選型指南
容器分類 有序容器:string、vector、list、deque(元素有嚴格線性順序) 關聯容器:set、map(底層紅黑樹,無序但提供高效查找) 容
浙大 PAT 1044 Shopping in Mars:滑動窗口優化 O(n²) 尋找目標和子區間
題目重述 長度 n ≤ 100000 序列,找所有和為 m 的連續子區間;若無,找最小超過 m 的和並輸出所有對應區間。多測試案例。 暴力 O(n²) 超時
C/C++ 多層 for 迴圈效能優化與 Stack Overflow 解決方案
迴圈順序效能法則 將最長迴圈放在**最內層**,最短迴圈放在**最外層**,減少 CPU 切換迴圈層級的開銷。 實測對比 // 情況 1:外層 5,內層 10
設計模式詳解:享元模式結構、實現與網站分類共享案例
模式動機 當系統存在大量細粒度物件導致記憶體壓力時,透過共享技術復用相同內部狀態的物件,外部狀態由客戶端傳入。 角色結構 FlyweightFactory:
大整數質數測試與因數分解:Miller-Rabin 與 Pollard's Rho 算法詳解
前置工具:模運算乘法與冪 LL mul(LL a, LL b, LL p) { // (a*b)%p 避免溢位 LL r=0; for(LL i=1;
HDU 1228:英文單詞加法——字串解析與大整數模擬
題目轉化 輸入格式 A + B =,A、B 由英文單詞 zero~nine 組成(每位一個單詞),空格分隔。將單詞轉為數字拼成整數,計算 A+B。當 A=B=0
HDU 3785:尋找前 M 大富翁——部分排序與邊界處理
題目大意 n 人財富值(n ≤ 100000),求前 m 富翁(m ≤ 10),由富到貧輸出。若不足 m 人則全輸出。多測試案例,n=m=0 結束。 解法策略
HDU 3782:Collatz 猜想變體步數計算
問題規則 給定 n (1 < n ≤ 10000): 偶數:n = n / 2 奇數:n = (3n + 1) / 2 重複直到 n = 1,計算步數。輸入