1. 程式人生 > >PAT 乙級 1023. 組個最小數 (20) Java版

PAT 乙級 1023. 組個最小數 (20) Java版

給定數字0-9各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意0不能做首位)。例如:給定兩個0,兩個1,三個5,一個8,我們得到的最小的數就是10015558。

現給定數字,請編寫程式輸出能夠組成的最小的數。

輸入格式:

每個輸入包含1個測試用例。每個測試用例在一行中給出10個非負整數,順序表示我們擁有數字0、數字1、……數字9的個數。整數間用一個空格分隔。10個數字的總個數不超過50,且至少擁有1個非0的數字。

輸出格式:

在一行中輸出能夠組成的最小的數。

輸入樣例:

2 2 0 0 0 3 0 0 1 0

輸出樣例:

10015558
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		int[] times = new int[10];
		for (int i = 0; i < 10; i++) {
			times[i] = in.nextInt();
		}
		in.close();

		StringBuilder s = new StringBuilder();
		for (int i = 1; i < 10; i++) {
			if (times[i] != 0) {
				s.append(i);
				times[i]--;
				break;
			}
		}

		for (int j = 0; j < 10; j++) {
			while (times[j] != 0) {
				s.append(j);
				times[j]--;
			}
		}

		System.out.println(s);

	}
}

相關推薦

PAT 乙級 1023. 小數 (20) Java

給定數字0-9各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意0不能做首位)。例如:給定兩個0,兩個1,三個5,一個8,我們得到的最小的數就是10015558。 現給定數字,請編寫程式輸出能夠組成的最小的數。 輸入格式:

PAT乙級1023小數

題目描述: 給定數字 0-9 各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意 0 不能做首位)。例如:給定兩個 0,兩個 1,三個 5,一個 8,我們得到的最小的數就是 10015558。 現給定數字,請編寫程式輸出能夠組成的最小的數。

PAT1023 小數20 分)

1023 組個最小數 (20 分) 給定數字 0-9 各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意 0 不能做首位)。例如:給定兩個 0,兩個 1,三個 5,一個 8,我們得到的最小的數就是 10015558。 現給定數字,

PAT (Basic Level) Practice (中文)1023 小數20 分)C語言

1023 組個最小數 (20 分) 給定數字 0-9 各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意 0 不能做首位)。例如:給定兩個 0,兩個 1,三個 5,一個 8,我們得到的最小的數就是 10015558。 現給定數字,

PAT 1023.小數

div 例如 順序 嘻嘻 數字0 現在 能夠 pre markdown 1023. 組個最小數 (20) 給定數字0-9各若幹個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數盡可能小(註意0不能做首位)。例如:給定兩個0,兩個1,三個5,一個8,我們

PAT】B1023 小數20 分)

最小數 [1] ace pac 存儲位置 bool algorithm tdi include #include<stdio.h> #include<algorithm> using namespace std; struct number{

1023 小數20 分)

給定數字 0-9 各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意 0 不能做首位)。例如:給定兩個 0,兩個 1,三個 5,一個 8,我們得到的最小的數就是 10015558。 現給定數字,請編寫程式輸出能夠組成的最小的數。 輸入格式: 輸入

ZJU PAT 1023 小數

給定數字0-9各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意0不能做首位)。例如:給定兩個0,兩個1,三個5,一個8,我們得到的最小的數就是10015558。 現給定數字,請編寫程式輸出能夠組成的最小的數。 輸入格式: 每個輸入包含1個測試用例。每個測試

1023 小數20 分)

給定數字 0-9 各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意 0 不能做首位)。例如:給定兩個 0,兩個 1,三個 5,一個 8,我們得到的最小的數就是 10015558。 現給定數字,請編寫程式輸出能夠組成的最小的數。

1023 小數

code esp using while cout != clas for i++ 1 #include<iostream> 2 using namespace std; 3 4 int main(){ 5 int a[10], s = 0

小數 (20) 時間限制 1000 ms 記憶體限制 32768 KB 程式碼長度限制 100 KB 判斷程式 Standard (來自 小小)

題目描述 給定數字0-9各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意0不能做首位)。例如: 給定兩個0,兩個1,三個5,一個8,我們得到的最小的數就是10015558。 現給定數字,請編寫程式輸出能夠組成的最小的數。

PAT 乙級 1003. 我要通過!(20) Java

“答案正確”是自動判題系統給出的最令人歡喜的回覆。本題屬於PAT的“答案正確”大派送 —— 只要讀入的字串滿足下列條件,系統就輸出“答案正確”,否則輸出“答案錯誤”。 得到“答案正確”的條件是: 1. 字串中必須僅有P, A, T這三種字元,不可以包含其它字元; 2.

PAT乙級1023小數

1.將輸入儲存起來,下標儲存的數字就是該下標需要列印的次數 2.把數字1列印一次,再遍歷向量組,如果是1的話少列印一次,不是的話正常列印 #include<iostream> #include<vector> using namespace std; int main()

Pat乙級1023題——小數(Python)

程式碼測試結果為滿分 def minNum(): input = map(int, raw_input().split(' ')) result = '' for i in range(1, len(input)): i

乙級(Basic Level) 1013 小數

cin c++ iostream int 描述 != spl using pri 題目描述 給定數字0-9各若幹個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數盡可能小(註意0不能做首位)。例如:給定兩個0,兩個1,三個5,一個8,我們得到的最小的數

7-3 小數20 分)

#include <bits/stdc++.h> using namespace std; int main() { int a[50]; int n, i = 0, j = 0,

小數20 分)

給定數字0-9各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意0不能做首位)。例如:給定兩個0,兩個1,三個5,一個8,我們得到的最小的數就是10015558。 現給定數字,請編寫程式輸出能夠組成的最小的數。 輸入格式: 輸入在一行中給出10個

B1023 小數20分)

[] cpp clu amp 至少 編寫 表示 lse 得到 B1023 組個最小數 (20分) 給定數字 0-9各若幹個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數盡可能小(註意 0 不能做首位)。例如:給定兩個 0,兩個 1,三個 5,一個8,

小數

題目描述 給定數字0-9各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意0不能做首位)。例如: 給定兩個0,兩個1,三個5,一個8,我們得到的最小的數就是10015558。 現給定數字,請編寫程式輸出能夠組成的最小的數。 #include <

7-2 小數(C語言

7-2 組個最小數 (20 分) 給定數字0-9各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意0不能做首位)。例如:給定兩個0,兩個1,三個5,一個8,我們得到的最小的數就是10015558。 現給定數字,請編寫程式