入門+ · 模式複用

迴文數

121 正讀反讀一樣;123 不一樣。關鍵洞察:迴文數等於它自己的反轉——複用上一題的模式,比一下。

題目

輸入:一個整數 n(0 ≤ n ≤ 10⁹)。

輸出:迴文輸出 Yes,否則 No。

樣例:

輸入輸出
121Yes
10No

你的解答

Program.cs — 你的解答
"用我的輸入試跑"的自定義輸入

判題完全在你的瀏覽器裡對隱藏測試執行。程式碼隨打隨存(本地)。Ctrl+Enter 判題。

卡住了?提示

提示 1 —— 保住原件

反轉會摧毀 n。先抄一份:int orig = n;,最後比 rev == orig。

提示 2 —— 別急著上字串

字串版(s == 倒序)也能過,但整數模式能推廣到面試追問,比如“只反轉後半段”。

解答(先自己試!)
int n = int.Parse(Console.ReadLine());
int orig = n, rev = 0;
while (n > 0) { rev = rev * 10 + n % 10; n = n / 10; }
Console.WriteLine(rev == orig ? "Yes" : "No");

這題的真功夫是模式複用:反轉 + 比較。下一題:階乘。