華為機試經典三題:身分證、手機號、郵箱驗證完整解法
題目一:身分證號碼驗證 規則說明 長度 18 位 第 1-17 位為數字 第 18 位為數字或小寫 x 第 7-14 位為出生日期(YYYYMMDD) 年份
C++03 模擬 C++11 右值引用與 std::move 實作詳解
引言 C++11 引入的右值引用是革命性特性,解決了臨時物件無法修改、拷貝成本高昂的問題。本文探討如何在 C++03 環境下,透過轉換運算子與樣板技術模擬 st
C++ 使用 MySQL++ 操作 MySQL 資料庫完整指南(三)
前言 本文將詳細介紹如何在 Visual Studio 2013 環境下,使用官方 C++ API 庫 MySQL++ 來操作 MySQL 5.6 資料庫。My
C 與 C++ 核心差異全景圖:從記憶體管理到泛型編程
1. 動態記憶體管理 特性CC++ 分配函式malloc、calloc、reallocnew / new[] 釋放函式freedelete / delete
CrossApp 推出「一鍵部署」與「一鍵創建工程」工具,大幅降低開發門檻
背景:開發者回饋驅動的快速迭代 CrossApp 為免費、開源、跨平台的 App 開發引擎(MIT 協議,C++ + OpenGL ES 2.0),支援 iOS
Effective C++ 條款 38:以複合模塑 has-a 或「據以實現」關係
核心觀念:繼承 ≠ 複合 public 繼承 表達 is-a(是一種) 關係:基類能做的事,派生類必須都能做。 複合 表達兩種截然不同的語意: 應用
Ubuntu 12.04 下 Eclipse 配置 C++11 開發環境全攻略
安裝 GCC 4.8(支援 C++11 的最低版本) Ubuntu 12.04 預設倉庫 GCC 版本較舊,需加入 Toolchain PPA: sudo ap
C++ 虛基類詳解:解決菱形繼承的二義性問題
什麼是虛基類? 在 C++ 多重繼承中,當一個派生類通過多條路徑繼承自同一個基類時,會導致基類成員在派生類中出現多份拷貝,造成二義性。例如經典的「菱形繼承」結構
LightOJ 1304 The Best Contest Site Ever:二分圖最大匹配變體(行列編號 + 障礙物)
問題描述 R×C 網格,. 可放人,W 為牆(阻隔行列),R 為障礙(不可放人但不阻隔)。求最大放置人數(不共行列,類似八皇后)。 建模:行列編號 + 二分圖
K倍動態減法游戲 HDU 2486 / POJ 3922:SG 函數 / 費波那契類數列規律
問題描述 兩人輪流從一堆石子中取走,每次可取數量屬於集合 S。但本題規則特殊:S 由遞推生成。具體為 HDU 2486 / POJ 3922「K倍動態減法游戲」
LeetCode Median of Two Sorted Arrays:二分查找第 k 小元素 O(log(m+n))
問題描述 給兩個已排序數組 A(長 m)和 B(長 n),求合併後的中位數。要求 O(log(m+n)) 時間。 核心思路:轉化為找第 k 小元素 中位數
POJ 1861 Network:最小生成樹 Kruskal 模板題
問題描述 給定無向圖,求最小生成樹的最大邊權、邊數、以及具體邊列表。Special Judge 允許任意合法 MST。 算法:Kruskal + 並查集 邊
NYOJ 264 國王的魔鏡:字符串折疊求最小原始長度
問題描述 魔鏡操作:字符串一端貼鏡面,鏡像拼接到另一端。如 AB 貼 B 端 → ABBA。給定最終字符串,求可能的最小原始長度。 逆向思維:反復檢查回文前綴
UVA 10831 Gerg's Cake:勒讓德符號判斷二次剩餘
問題描述 給定 a, p(p 為質數?題目隱含),判斷同餘方程 x^2 ≡ a (mod p) 是否有解。多組輸入,a=-1 結束。 數論工具:勒讓德符號 /
POJ 3613 Cow Relays:矩陣快速冂求恰好 n 步最短路徑
問題描述 有向圖 T 條邊,點數隱含。求從 s 到 e 恰好走 n 步的最短路徑長度。n 可能很大(題目未給上限,但矩陣冂暗示大)。 核心思想:鄰接矩陣冂 =
UVA 11246 K-Multiple Free Set:容斥原理求無 k 倍關係子集最大尺寸
問題描述 給定 n, k,從 {1..n} 中選最大子集,使不存在 a, b 滿足 a*k = b。輸出最大尺寸。 數學解法:容斥 / 遞推 考慮將數按 k