1023. 组个最小数

题目在这里


直接用排序把数组从小到大排好,把排好序后的第一个不是0的数字移动到第一位。

#include <iostream>
#include <bits/stdc++.h>
using namespace std;

int main()
{
	int a[10001];
	int k = 0;
	for(int i = 0; i < 10; i++) {
		int number;
		cin >> number;
		while(number) {
			a[k++] = i;
			number--;
		}
	}
	sort(a, a + k);
	for(int i = 0; i < k; i++) {
		if(a[i] != 0) {
			int temp = a[i];
			a[i] = a[0];
			a[0] = temp;
			break;
		}
	}
	for(int i = 0; i < k; i++) {
		cout << a[i];
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_39227338/article/details/80000866