【晴问算法】入门篇—贪心算法—最大组合整数

题目描述

现有0~9中各个数的个数,将它们组合成一个整数,求能组合出的最大整数。

输入描述

在一行中依次给出0-9中各个数的个数(所有个数均在0-100之间)。数据保证至少有一个数的个数大于0。

输出描述

输出一个整数,表示能组合出的最大整数。

样例1
输入

1 0 2 0 0 0 0 0 0 1

输出

9220

解释

存在1个0、2个2、1个9,因此能组合出的最大整数是9220

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
const int MAXN = 100;
int a[MAXN];


int main(){
	for(int i=0;i<=9;i++){
		cin >> a[i];//输入0-9的个数,1 0 2 0 0 0 0 0 0 1
	}//0有1个,1有0个,2有2个,3有0个,4有0个,...9有1个
	for(int i=9;i>=0;i--){//数字大的放高位,才会使得输出最大
		while(a[i] > 0){//比如a[9]=1,说明9有1个,打印出9,a[8]=0,说明没有8,跳过
			printf("%d",i);
			a[i]--;//a[i]的数是多少,就要打印多少次i
		}
	}
	
	
	return 0;
}
相关推荐
Greedy Alg29 分钟前
LeetCode 72. 编辑距离(中等)
算法
xinxingrs31 分钟前
贪心算法、动态规划以及相关应用(python)
笔记·python·学习·算法·贪心算法·动态规划
秋邱43 分钟前
驾驭数据洪流:Python如何赋能您的数据思维与决策飞跃
jvm·算法·云原生·oracle·eureka·数据分析·推荐算法
侯小啾1 小时前
【23】C语言 左移(<<) 与 右移(>>) 位运算符在处理像素中的应用
c语言·算法·位运算·右移·左移
搂鱼1145141 小时前
(dp 优化)洛谷 P14460 寻雾启示 题解
算法·图论
_OP_CHEN1 小时前
算法基础篇:(十一)贪心算法拓展之区间问题:从重叠到覆盖的最优解艺术
算法·贪心算法
钟智强2 小时前
线性映射(Linear Mapping)原理详解:机器学习中的数学基石
人工智能·算法·机器学习
福尔摩斯张4 小时前
C语言核心:string函数族处理与递归实战
c语言·开发语言·数据结构·c++·算法·c#
吗~喽4 小时前
【LeetCode】滑动窗口_水果成篮_C++
c++·算法·leetcode
立志成为大牛的小牛5 小时前
数据结构——四十九、B树的删除与插入
数据结构·学习·程序人生·考研·算法