PTA 1022 D進製的A B

2021-09-11 07:04:59 字數 644 閱讀 6202

給定數字 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]

)print

(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進製數。輸入樣...