PAT (Basic Level):1023 组个最小数 (20)

题目信息

给定数字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

#include<stdio.h>
int main(){
    int a[10];
    for(int i=0;i<10;i++) scanf("%d",&a[i]);
    for(int i=1;i<10;i++){
      if(a[i]){
        printf("%d",i);
        a[i]--;
        break;
      }
    }
    for(int i=0;i<10;i++){
      while(a[i]){
        printf("%d",i);a[i]--;
      }
    }
    return 0;
}

测试结果

image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 我的PAT系列文章更新重心已移至Github,欢迎来看PAT题解的小伙伴请到Github Pages浏览最新内容。...
    OliverLew阅读 1,520评论 0 0
  • 传送门 https://pintia.cn/problem-sets/994805260223102976/pro...
    Rush的博客阅读 1,772评论 0 0
  • 描述 给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0...
    tingshuo123阅读 734评论 0 0
  • 历史,一条绵绵流淌的河,载着多少欢笑,悲伤,泪与血。后人未必知道。因为后人也同样悲欢、血泪着,留给一如以往的后人。
    金洛生阅读 176评论 0 0
  • 我写过一首诗 然后把它埋了 我知道我的笔法不够深刻 没有鲜活的生命 它就不应该活着 我写过一首诗 然后把它埋了 我...
    忆清欢阅读 537评论 25 21

友情链接更多精彩内容