题解:P15063 [UOI 2024 II Stage] Creating an Array
题目大意
给你
题目解法
要使它们排列起来最大,我们就可以将它们从大到小排列,最后再输出。
那怎么存这些数呢?我们可以先定义一个数组,只要某个数出现了
如果你和我一样懒得写
AC Code
#include <bits/stdc++.h>
using namespace std;
int a[11], b[501], cnt;
int main(){
for ( int i = 1 ; i <= 10 ; i ++ ){
cin >> a[i];
if ( a[i] ){
for ( int j = 1 ; j <= a[i] ; j ++ ){
b[++cnt] = i - 1;
}
}
}
sort ( b + 1, b + cnt + 1 );
for ( int i = cnt ; i >= 1 ; i -- ){
cout << b[i] << " ";
}
return 0;
}