[問題] palindrome number

作者: lamb132610 (藍博13二六o'_'o)   2019-03-18 23:00:29
開發平台(Platform): (Ex: Win10, Linux, ...)
Win10
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
Code Blocks
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
想請教一下,為何我成功反轉數字,但是輸出結果錯誤
在不考慮把input轉成字串或其他方式下
餵入的資料(Input):
121
預期的正確結果(Expected Output):
true
錯誤結果(Wrong Output):
false
程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔)
https://ideone.com/kY9CUr
補充說明(Supplement):
作者: Serge45 (QAQ)   2019-03-18 23:04:00
因為re裡面會修改x,你需要把原來的x值記起來。
作者: loveme00835 (髮箍)   2019-03-19 14:13:00
試試只做一半的位數, 不過這會需要你先知道總共有幾位數, 但是除非對 log 做優化, 不然效能差不多https://bit.ly/2OftfgR
作者: lamb132610 (藍博13二六o'_'o)   2019-03-19 14:54:00
謝謝大大的提點 我會去研究一下不過input是隨機輸入所以沒辦法確切知道位數
作者: loveme00835 (髮箍)   2019-03-19 14:55:00
對, 所以簡單作法是用 std::log10(), 但只是叫用並且做一半位數不會比較快
作者: RishYang (Rish)   2019-04-24 20:09:00
直接整數轉字串

Links booklink

Contact Us: admin [ a t ] ucptt.com