題目描述
如果乙個數從左往右讀和從右往左讀都是一樣,那麼這個數就叫做「回文數」。例如,12321就是乙個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。
事實上,有一些數(如21),在十進位制時不是回文數,但在其它進製(如二進位制時為10101)時就是回文數。
編乙個程式,從檔案讀入兩個十進位制數
bullet n (1 <= n <= 15)
bullet s (0 < s < 10000)
然後找出前n個滿足大於s且在兩種以上進製(二進位制至十進位制)上是回文數的十進位制數,輸出到檔案上。
本問題的解決方案不需要使用大於4位元組的整型變數。
輸入只有一行,用空格隔開的兩個數n和s。
輸出n行, 每行乙個滿足上述要求的數,並按從小到大的順序輸出。
樣例輸入
3 25
樣例輸出
2627
28這道題就是找到n個2-10進製中至少有兩種進製數為回文數的數。
ac**:
#include
#include
intmain()
str1[len]
='\0'
;for
(k=len-
1;k>=
0;k--
)//這兩步我自己感覺用strcpy和strrev更簡單,但是我在提交的那個**把strrev給**了,一用就編譯錯誤,無奈只能用迴圈
str2[t3++
]=str1[k]
; str2[t3]
='\0';if
(strcmp
(str1,str2)==0
) sum++;}
if(sum>=2)
if(n==0)
break;}
}return0;
}
雙重回文數
問題描述 如果乙個數從左往右讀和從右往左讀都是一樣,那麼這個數就叫做回文數。例如,12321就是乙個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。事實上,有一些數 如21 在十進位制時不是回文數,但在其它進製 如二進位制時為10101 時就是回文數。編乙個程...
USACO 雙重回文數
如果乙個數從左往右讀和從右往左讀都是一樣,那麼這個數就叫做 回文數 例如,12321就是乙個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。事實上,有一些數 如21 在十進位制時不是回文數,但在其它進製 如二進位制時為10101 時就是回文數。編乙個程式,從檔...
Dual Palindromes 雙重回文數
如果乙個數從左往右讀和從右往左讀都是一樣,那麼這個數就叫做 回文數 例如,12321就是乙個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。事實上,有一些數 如21 在十進位制時不是回文數,但在其它進製 如二進位制時為10101 時就是回文數。編乙個程式,從檔...