1.问题:1023 组个最小数
2.解题关键:
- 注意题目输入要求:
输入在一行中给出 10 个非负整数,顺序表示我们拥有数字 0、数字 1、……数字 9 的个数。
我们输入的是数量,不是存入的数字。
- 2.由小到大排序后获取第一个数字,直接输出,之后for循环后要跳过该数字
3.代码:
#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>
#include<vector>
using namespace std;
int main()
{
int n,num=0,m=11;
int count=0;
int a[100]={0};//注意这里为a分配的容量
for(int i=0;i<10;i++)
{
cin>>n;
while(n)
{
a[count++]=i;
n--;
}
}
sort(a,a+count);
for(int i=0;i<count;i++)
{
if(a[i]!=0)
{
num=a[i];
m=i;
break;
}
}
cout<<num;
for(int i=0;i<count;i++)
{
if(i==m)
continue;
cout<<a[i];
}
return 0;
}