本單元常犯錯誤總覽
| # | 錯誤描述 | 錯誤類型 | ✗ 錯誤寫法 | ✓ 正確寫法 |
|---|---|---|---|---|
| 1 | 進制字串轉整數,累積變數開 int | 溢位 WA | int val;(數值上看 10^{18}) |
long long val; |
| 2 | 整數轉進制字串,忘記特判 0 | 什麼都沒輸出 | while (x > 0) 一次都不跑 |
開頭先判 x == 0,直接輸出 0 |
| 3 | 低位先取出來,忘記反轉就輸出 | 輸出左右顛倒 | 取完直接 cout << ans; |
reverse 之後再印,或倒著印 |
| 4 | 數值 10 以上仍用 '0' + d 轉字元 |
印出亂碼 | '0' + 15 是 '?' |
d >= 10 時用 'A' + (d - 10) |