如果乙個數從左往右讀和從右往左讀都是一樣,那麼這個數就叫做「回文數」。例如,12321就是乙個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。
事實上,有一些數(如21),在十進位制時不是回文數,但在其它進製(如二進位制時為10101)時就是回文數。
編乙個程式,從檔案讀入兩個十進位制數n (1 <= n <= 15)s (0 < s < 10000)然後找出前n個滿足大於s且在兩種或兩種以上進製(二進位制至十進位制)上是回文數的十進位制數,輸出到檔案上。
本問題的解決方案不需要使用大於32位的整型
輸入格式:
只有一行,用空格隔開的兩個數n和s。
輸出格式:
n行, 每行乙個滿足上述要求的數,並按從小到大的順序輸出。
輸入樣例#1:
3 25
輸出樣例#1:
262728
題目翻譯來自nocow。
usaco training section 1.2
這道題真不難。。
說說幾個把弱智的我卡主的地方。。。
ok的各種問題。。還有強行優化使用位運算比較大小導致的錯誤。。。
別忘了要有兩個及兩個以上
上**
#include #include #include #include const int maxn = 100000 + 10;
int n,s;
int num[maxn],lenth;
int main()
for(int i = 1;i <= lenth / 2;i++)
}if(ok)
if(cnt == 2)
}} return 0;
}
44 雙重回文數
44 雙重回文數 問題描述 如果乙個數從左往右讀和從右往左讀都是一樣,那麼這個數就叫做回文數。例如,12321就是乙個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。事實上,有一些數 如21 在十進位制時不是回文數,但在其它進製 如二進位制時為10101 時就...
44 雙重回文數
如果乙個數從左往右讀和從右往左讀都是一樣,那麼這個數就叫做回文數。例如,12321就是乙個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。事實上,有一些數 如21 在十進位制時不是回文數,但在其它進製 如二進位制時為10101 時就是回文數。編乙個程式,從檔案...
東華OJ高階題44 雙重回文數
44 雙重回文數 問題描述 如果乙個數從左往右讀和從右往左讀都是一樣,那麼這個數就叫做回文數。例如,12321就是乙個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。事實上,有一些數 如21 在十進位制時不是回文數,但在其它進製 如二進位制時為10101 時就...