輸入數字n
,按順序列印出從1
到最大的n
位十進位制數。比如輸入3
,則列印出1、2、3
一直到最大的3
位數999
。
示例 1:
輸入:n = 1說明:題目要求列印 「從輸出:[1,2,3,4,5,6,7,8,9]
1
至最大的n
位數的列表」 ,因此需考慮以下兩個問題:
最大的n
位數(記為end
)和位數n
的關係: 例如最大的1
位數是9
,最大的2
位數是99
,最大的3
位數是999
。則可推出公式:
e nd
=10n
−1end = 10^n - 1
end=10
n−1大數越界問題:當n
較大時,end
會超出int
整型的取值範圍,超出取值範圍的數字無法正常儲存。但由於本題要求返回int
型別陣列,相當於預設所有數字都在int
整型取值範圍內,因此不考慮大數越界問題。
故只需定義區間 [1,
10n−
1][1, 10^n - 1]
[1,10n
−1]和步長1
,通過for
迴圈生成結果列表res
並返回即可。
17 列印從1到最大的n位數 python
題目 輸入數字n,按順序列印從1到最大的n位十進位制數。大整數問題 def print max n n res 0 for i in range n while not is max res res list plus 1 res print res def is max arrys for arr...
演算法 17 列印從1到最大的n位數
1 要列印從1到最大的n位數,題目要求把列印的數放在乙個陣列裡面,首先要確定這個陣列的長度是多少 pow 方法可返回 x 的 y 次冪的值。我們用這個函式方法可以求得陣列的長度 len math.pow 10,n 12 將長度為len的陣列,從1按順序列印出來 array.from使用箭頭語法和對映...
劍指 17 列印從1到最大的n位數
題目描述輸入數字n,按順序列印出從1到最大的n位十進位制數。比如輸入3,則列印出1,2,3一直到最大的3位數999.思路分析 考查大數的表示與計算.將分為3個模組。增長數字。列印數字。面試題17.列印從1到最大的n位數 include include using namespace std bool...