CCF-训练50题-NO.25-组个最小数
2017-11-17 00:00
260 查看
题目描述
给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)。例如:给定两个0,两个1,三个5,一个8,我们得到的最小的数就是10015558。现给定数字,请编写程序输出能够组成的最小的数。
输入
每个输入包含1个测试用例。每个测试用例在一行中给出10个非负整数,顺序表示我们拥有数字0、数字1、……数字9的个数。整数间用一个空格分隔。10个数字的总个数不超过50,且至少拥有1个非0的数字。输出
在一行中输出能够组成的最小的数。代码
#include <iostream> using namespace std; int numb[10]={0,0,0,0,0,0,0,0,0,0}; int main(){ string num; getline(cin,num); int l=num.size(); for (int i=0;i<l;i++){ numb[num[i]-'0']++; } int time=0; for (int i=0;i<10;i++){ if (numb[i]!=0) {if (time==0) cout<<i<<":"<<numb[i]; else cout<<endl<<i<<":"<<numb[i]; time++; } } 4000 return 0; }
相关文章推荐
- CCF-训练50题-NO.10-恺撒Caesar密码
- CCF-训练50题-NO.18-成绩大排队
- CCF-训练50题-NO.19-说反话
- CCF-训练50题-NO.20-A+B和C比大小
- CCF-训练50题-NO.29-最少钱币数
- CCF-训练50题-NO.30-蛇形矩阵
- CCF-训练50题-NO.1-数塔问题
- CCF-训练50题-NO.3-数字排序问题
- CCF-训练50题-NO.11-身份证校验
- CCF-训练50题-NO.21-部分A+B
- CCF-训练50题-NO.4-相邻数对问题
- CCF-训练50题-NO.12-多项式加法
- CCF-训练50题-NO.22-A除以B
- CCF-训练50题-NO.5-画图
- CCF-训练50题-NO.13-数码管
- CCF-训练50题-NO.23-锤子剪刀布
- CCF-训练50题-NO.6-字符串匹配问题
- CCF-训练50题-NO.14-字母排列
- CCF-训练50题-NO.24-个位数统计
- CCF-训练50题-NO.7-日历问题