7. reverse integer
題目:將輸入整數逆序輸出,保持正負號不變
思路:將負數先變正數(取反加1),進行統一處理,新建long型別變數,將輸入整數的每一位(%10)加到該變數,每迴圈一次該變數*10,同時判斷該變數是否大於integer.max_value或小於integer.min_value(判斷是否溢位),是則返回零。最後輸入大於零直接輸出該變數,否則取反加1輸出。需要注意最後一位也要加。
public class solution
int temp = x;
long ret = 0;
if(x < 0) temp = ~temp + 1;
while(temp/10 != 0)
ret = ret*10 + temp%10;
if(ret > integer.max_value || ret < integer.min_value) return 0;
if(x < 0) return ~(int)ret + 1;
return (int)ret;
}}
看下別人的解答,發現取反這步多餘,可以去掉。
8. string to integer (atoi)
題目:字串轉整型
思路:暫時不想做qaq
逆序輸出整數
描述 將乙個整數逆序輸出。整數的範圍0到10000,不會超出int表示範圍 關於輸入 輸入僅一行,整數n 關於輸出 輸出也僅一行,整數的逆序形式 例子輸入 例子輸出 個人方法 簡單粗暴的分類討論,不過這裡程式設計網格的測試資料出了一點問題,題幹裡說的是不超過10000的整數,但是實際上第六個測試資料...
1111 多個整數的逆序輸出
description 輸入n和n個整數,以與輸入順序相反的順序輸出這n個整數。要求不使用陣列,而使用遞迴函式實現。遞迴函式實現過程如下 void inverse int n if n 1 直接輸出num input 輸入有兩行,第一行是乙個正整數n,第二行有n個整數,整數之間由空格隔開。outpu...
PAT 1006 換個格式輸出整數 逆序輸出
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 讓我們用字母b來表示 百 字母s表示 十 用 12.n 來表示個位數字n 10 換個格式來輸出任乙個不超過3位的正整數。例如234應該被輸出為bbsss1234,因為它有...