zoukankan      html  css  js  c++  java
  • 1023 组个最小数 (20 分)

    给定数字 0-9 各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意 0 不能做首位)。例如:给定两个 0,两个 1,三个 5,一个 8,我们得到的最小的数就是 10015558。

    现给定数字,请编写程序输出能够组成的最小的数。

    输入格式:

    输入在一行中给出 10 个非负整数,顺序表示我们拥有数字 0、数字 1、……数字 9 的个数。整数间用一个空格分隔。10 个数字的总个数不超过 50,且至少拥有 1 个非 0 的数字。

    输出格式:

    在一行中输出能够组成的最小的数。

    输入样例:

    2 2 0 0 0 3 0 0 1 0
    

    输出样例:

    10015558

    分析:这个题主要就是首位和排序
     1 #include<iostream>
     2 #include<cstdio>
     3 using namespace std;
     4 int main()
     5 {
     6     int a[10],b[100],sum=0;
     7     for(int i=0;i<10;i++)
     8     {
     9         cin>>a[i];
    10         sum+=a[i];
    11         getchar();
    12     }
    13         for(int i=1;i<10;i++)
    14         {
    15             if(a[i]!=0)
    16             {
    17                 b[0]=i;
    18                 a[i]--;
    19                 break;
    20             }
    21         }
    22 
    23     int sum2=sum;
    24     int k=0;
    25     int s=1;
    26 
    27     while(sum!=1)
    28         {
    29             if(a[k]!=0)
    30             {
    31                 b[s]=k;
    32                 a[k]--;
    33                 sum--;
    34                 s++;
    35             }
    36             else
    37                 k++;
    38         }
    39    // cout<<s<<endl;
    40     for(int i=0;i<sum2;i++)
    41         cout<<b[i];
    42 }
  • 相关阅读:
    微博(MicroBlog)
    面试题网站目录
    html 打印代码,支持翻页
    C#日期格式化
    职位英语简称注解
    专业术语:闭包、网站优化 Gzip 服务器端文件压缩
    1,由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。
    JSON-JSON 百科
    api.js
    Android消息处理机制
  • 原文地址:https://www.cnblogs.com/ygjojo/p/10759009.html
Copyright © 2011-2022 走看看