四選三全排列生成:從暴力三層循環到標準排列算法的演進
問題描述 輸入 4 個已排序的不同整數,輸出從中選 3 個數的所有排列(共 24 種)。輸出順序:先固定不選第 4 個數的 6 種排列,再不選第 3 個,依此類
支配值計算:兩個有序數組元素大小關係統計優化算法
問題描述 給定兩個已排序的整數數組 f[] 和 g[],長度分別為 m, n (≤1000)。計算 f 中每個元素比 g 中多少元素大的總和(支配值)。 暴力
YYYY-MM-DD 日期格式解析:計算當年第幾天的簡化輸入版本
問題描述 輸入格式為 YYYY-MM-DD 的日期字符串(多行直到 EOF),輸出該日期是當年的第幾天。輸入保證合法。 與前題差異 輸入格式:帶連字符的單行
計算年內天數:日期轉換為當年第幾天的算法與閏年處理
問題描述 輸入年月日,計算該日期是當年的第幾天。輸入第一行為測試用例數 n,隨後 n 行各包含年、月、日三個整數。保證輸入日期合法。 核心邏輯 預定義平年每
回文串判斷:字符串正反對稱性檢測算法與C語言實現
問題描述 判斷輸入字符串是否為回文串(正讀反讀相同)。輸入第一行為測試用例數 n,隨後 n 行字符串(長度 ≤ 30)。每行輸出 yes 或 no。 回文串判
C語言合法標識符判斷:規則解析與完整代碼實現
問題描述 判斷輸入字符串是否為 C 語言合法標識符。輸入第一行為測試用例數 n,隨後 n 行字符串(長度 ≤ 50)。合法標識符規則:首字符須為字母(大小寫)或
統計元音字母:字符串中元音出現次數的計算與C語言實現
問題描述 給定多行字符串,統計每行中五個元音字母(a, e, i, o, u)出現的次數,不區分大小寫。輸入第一行為測試用例數 n,隨後 n 行字符串(長度 ≤
數列求和:解析遞增數列前n項和的計算方法與C語言實現
問題描述 給定一個數列:1, 2, 4, 7, 11, 16, 22……,請計算該數列前 n 項的和。輸入包含多組測試數據,每組一個整數 n (0 < n
OJ題解:正整數解個數 - x+y+z=n 組合數學
題目轉化 求正整數解 (x,y,z) 滿足 x+y+z=n (n≥3) 的個數。 令 x=x-1, y=y-1, z=z-1,則 x,y,z ≥ 0 且 x+y
C語言預處理器 # 與 ## 運算符詳解
# 運算符:字串化 將宏參數轉換為字串常值。參數名稱前加 #,展開時會被雙引號包圍。 範例 1:除錯巨集 #define P(A) printf(%s:%d\
OJ題解:自然數的和之和 - 三角數列求和
題目數學模型 求 S = Σᵢ₌₁ᴺ Σⱼ₌₁ⁱ j = Σᵢ₌₁ᴺ i(i+1)/2 = N(N+1)(N+2)/6 即前 N 個三角數之和(四面體數)。
OJ題解:查找最大元素 - 字串中最大字元後插入標記
題目要求 對每行輸入字串(僅含字母,長度≤100),找出ASCII碼最大的字元,在每個最大字元後插入 (max)。 演算法:兩遍掃描 第一遍:找出最大字元
OJ題解:首字母大寫 - 英文句子單詞首字母大寫
題目要求 輸入多行英文句子(每行 ≤100字元),將每個單詞第一個字母轉為大寫,其餘保持不變。 演算法:狀態機 用 flag 標記「下一字元是否為單詞開頭」:
OJ題解:素數判定 - 驗證 n²+n+41 在區間內全為質數
題目背景 歐拉多項式 f(n) = n² + n + 41 在 n ∈ [-39, 50] 時產生質數。輸入多組區間 [x, y],判定該區間內所有整數 n 代
OJ題解:ASCII碼排序 - 三字元由小到大
題目要求 每行輸入三個字元(無空格),按ASCII碼升序輸出,字元間以單一空格分隔。多組測試資料直到EOF。 演算法:三元素排序網路 固定三元素,兩兩比較交換