給定數字 0-9 各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數盡可能小(注意 0 不能做首位)。例如:給定兩個 0,兩個 1,三個 5,乙個 8,我們得到的最小的數就是 10015558。
現給定數字,請編寫程式輸出能夠組成的最小的數。
輸入格式:
輸入在一行中給出 10 個非負整數,順序表示我們擁有數字 0、數字 1、……數字 9 的個數。整數間用乙個空格分隔。10 個數字的總個數不超過 50,且至少擁有 1 個非 0 的數字。
輸出格式:
在一行中輸出能夠組成的最小的數。
輸入樣例:
2 2 0 0 0 3 0 0 1 0
輸出樣例:
10015558
將1-9的數字連起來,然後把0塞到第二位後即可
n =
input()
.split()a=
''for i in
range(1
,10):
a +=
str(i)
*int
(n[i]
(a[0]+
'0'*
int(n[0]
)+a[1:
])
1022 D進製的A B
輸入兩個非負10進製整數a和b 230 1 輸出a b的d 1 d 10 進製數。輸入格式 輸入在一行中依次給出3個整數a b和d。輸出格式 輸出a b的d進製數。輸入樣例 123 456 8輸出樣例 1103 按照進製轉換的公式,得出的餘數要反過來輸出。所以要先把計算出的餘數儲存在陣列中,但是陣列...
1022 D進製的A B
分析 其實就是把十進位制數a b的和轉換為d進製數 模擬十轉二的除基取餘法 思路 為了防止不必要的麻煩,a和b還是用long吧 除基取餘 將a b的和除以d,取每次的餘數,直到商為0 不能直接輸出餘數,這樣是反的。放在乙個陣列裡倒著輸出 include using namespace std int...
PAT 1022 D進製的A B
時間限制 100 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 輸入兩個非負10進製整數a和b 230 1 輸出a b的d 1 d 10 進製數。輸入格式 輸入在一行中依次給出3個整數a b和d。輸出格式 輸出a b的d進製數。輸入樣...