1023 组个最小数

给定数字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
  题解:这道题也是贪心策略,让小数占据高位,大数尽可能在后面(0不能为首位)。
代码如下:
 #include<iostream>
#include<string> using namespace std; int main()
{
int a[];
string q;
for( int i = ; i < ; i++) cin>>a[i];
for( int i = ; i < ; i++){
if( i != && a[i] != ){
q += i + '';
a[i]--;
break;
}
}
for( int i = ; i < ; i++){
if( a[i]!= ){
while(a[i]){
q += i + '';
a[i]--;
}
}
}
cout<<q;
return ;
}
 

最新文章

  1. Result Maps collection already contains value for
  2. AMap编辑折线、多边形、圆
  3. [linux] mysql跨服务器访问, iptables设置
  4. mac 下更新 .bash_profile 文件
  5. java.lang.NoSuchMethodException
  6. iOS-直播开发(开发从底层做起)
  7. DevOps的几个场景
  8. VB6之阴影图层
  9. DC 辅域转主域
  10. libJPEG-turbo库使用示例代码
  11. WPF 10天修炼 第五天- 内容控件
  12. JAVA工程师-蚂蚁金服电话面试
  13. WebApi请求原理
  14. Probability和Likelihood的区别
  15. Android学习之基础知识十—内容提供器(Content Provider)
  16. 关于trim,ltrim ,rtrim 的 移除问题
  17. aps.net手写验证模型的方法
  18. Node前后端分离基本概括
  19. 永不改变的PCB设计黄金法则
  20. Java设计模式(14)责任链模式(Chain of Responsibility模式)

热门文章

  1. HDU6308(2018多校第一场)
  2. linux下svn服务器搭建步骤
  3. Github开源项目单
  4. [github][https模式下提交记住密码]
  5. Vue 简单实用---代码可以直接用
  6. JavaScriptSerializer类序列化日期时需要注意的问题
  7. WPF中获取指定坐标依赖对象数据项
  8. 【踩坑】Safari不兼容webpack封装的vue项目
  9. phpmyadmin消除无法保存最近表的提示
  10. 前端经典面试题 不经典不要star!