题库练习 Skills
← 上一题 下一题 →

A10068 | Skills

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Lesha plays the recently published new version of the legendary game hacknet. In this version character skill mechanism was introduced. Now, each player character has exactly $n$ skills. Each skill is represented by a non-negative integer $a_{i}$ — the current skill level. All skills have the same maximum level $A$ .

Along with the skills, global ranking of all players was added. Players are ranked according to the so-called Force. The Force of a player is the sum of the following values:

- The number of skills that a character has perfected (i.e., such that $a_{i}=A$ ), multiplied by coefficient $c_{f}$ .
- The minimum skill level among all skills ( $min\ a_{i}$ ), multiplied by coefficient $c_{m}$ .

Now Lesha has $m$ hacknetian currency units, which he is willing to spend. Each currency unit can increase the current level of any skill by $1$ (if it's not equal to $A$ yet). Help him spend his money in order to achieve the maximum possible value of the Force.

输入格式

The first line of the input contains five space-separated integers $n$ , $A$ , $c_{f}$ , $c_{m}$ and $m$ ( $1<=n<=100000$ , $1<=A<=10^{9}$ , $0<=c_{f},c_{m}<=1000$ , $0<=m<=10^{15}$ ).

The second line contains exactly $n$ integers $a_{i}$ ( $0<=a_{i}<=A$ ), separated by spaces, — the current levels of skills.

输出格式

On the first line print the maximum value of the Force that the character can achieve using no more than $m$ currency units.

On the second line print $n$ integers $a'_{i}$ ( $a_{i}<=a'_{i}<=A$ ), skill levels which one must achieve in order to reach the specified value of the Force, while using no more than $m$ currency units. Numbers should be separated by spaces.

输入输出样例

输入 #1
3 5 10 1 5
1 3 1
输出 #1
12
2 5 2 
输入 #2
3 5 10 1 339
1 3 1
输出 #2
35
5 5 5 
C++ 编辑器
输入
输出