UVa 424 Integer Inquiry —— 大整數加法(高精度求和)
問題描述 輸入最多 100 行,每行一個不超過 100 位的非負整數,以單獨一行 0 結束。輸出所有整數的和。 解法:模擬豎式加法 將每個數字字符串反轉存入數
UVa 299 Train Swapping —— 計算冒泡排序交換次數(逆序對)
問題描述 火車車廂初始順序為 1~L 的排列。只能交換相鄰車廂。求將其排序為 1,2,...,L 所需的最少交換次數。多測試用例。 核心洞察 最少相鄰交換次數
HDU 1505 / POJ 1964 City Game —— 最大全 1 子矩陣(掃描法 + 遞推)
問題描述 給定 m x n 矩陣,元素為 F 或 R。找最大的全 F 子矩陣面積,輸出面積 * 3。 掃描法思路 對每一行掃描,維護三個數組: up[i
三星 S3F9454 ADC 採樣應用代碼示例
ADC 通道定義 #define ADC_Chanel0 (0x00 << 4) #define ADC_Chanel1 (0x01 << 4) #defi
設計模式:工廠方法模式(Factory Method)與簡單工廠對比
簡單工廠模式(Static Factory Method) 又稱靜態工廠方法,不屬於 GoF 23 種模式,但最常用。核心:一個工廠類提供靜態方法,根據字符串參
HDU 4394 Digital Square —— BFS + 乘法原理求平方根
問題描述 給定一個整數 n,找到最小的非負整數 x 使得 x^2 的低位數字與 n 完全相同(即 x^2 ≡ n (mod 10^len),其中 len 為 n
HDU 4487 Maximum Random Walk —— 概率 DP 計算期望位置
問題描述 一維隨機游走,共 n 步。每步:向右概率 r,向左概率 l,停留概率 m = 1-l-r。起點為 0。求 n 步後位置的期望值(最右端位置的期望)。
POJ 1376 機器人在網格中移動的最短時間 —— BFS 狀態搜索
問題描述 一個直徑為 1 的機器人在 m x n 網格木板上移動。命令: go k:向當前方向前進 1~3 格,每格耗時 1 秒。 turn left
HDU 1059 Dividing —— 多重背包與二進制優化
問題描述 給定價值為 1~6 的石頭各若干塊,問能否將其分成兩堆,使兩堆總價值相等。石頭總數 ≤ 20000,總價值 ≤ 120000。 轉化為 0-1 背包
JNA 中 unsigned 類型映射的正確姿勢
問題背景 Java 無無符號類型,調用 C/C++ DLL 中 unsigned int 參數/返回值時,直接用 int 接收會導致負數溢出(最高位為符號位)。
編程面試題 8.2:矩陣中機器人從左上角走到右下角的所有路徑
問題描述 基本版:在 m x n 矩陣中,機器人從 (0,0) 走到 (m-1,n-1),每步只能向右或向下。輸出所有路徑。 帶障礙版:矩陣中 1 表
HDU 2089「不要 62」—— 數位 DP 統計不含 4 和 62 的數字個數
問題描述 給定區間 [n, m],統計其中不包含數字 4 和連續子串 62 的整數個數。多組測試,以 0 0 結束。 數位 DP 思路 定義 dp[pos][
HDU 4612 Warm up:最小化橋的數量——雙連通分量、縮點與樹的直徑
問題描述 給定一個無向圖,允許增加一條邊。目標是使圖中的橋(割邊)數量盡可能少。橋是指刪除後會增加圖的連通分量數的邊。 解題思路 找出所有橋:使用 Ta
UVA 12529 Fix the Pond:BFS 計算連通分量
問題描述 2N × (2N+1) 網格,某些格線有可旋轉的門。至少旋轉幾扇門,使從 (1,1) 能走遍所有格子並到達 (1, 2N+1)。 關鍵洞察 門只在同
POJ 2115 C Looooops:擴展歐幾裡德解模線性方程
問題描述 無符號 k 位整數變量,循環:for (var = A; var != B; var += C)。求循環次數,或輸出 FOREVER(無法終止)。
HDU 1203 I NEED A OFFER!:0-1 背包最大化錄取概率
問題描述 有 V 元錢,n 種 offer。第 i 種需花費 c[i],獲得概率 w[i]。每種最多申請一次。求至少獲得一個 offer 的最大概率。 概率轉