zoukankan      html  css  js  c++  java
  • 【codeforces 758A】Holiday Of Equality

    time limit per test1 second
    memory limit per test256 megabytes
    inputstandard input
    outputstandard output
    In Berland it is the holiday of equality. In honor of the holiday the king decided to equalize the welfare of all citizens in Berland by the expense of the state treasury.

    Totally in Berland there are n citizens, the welfare of each of them is estimated as the integer in ai burles (burle is the currency in Berland).

    You are the royal treasurer, which needs to count the minimum charges of the kingdom on the king’s present. The king can only give money, he hasn’t a power to take away them.

    Input
    The first line contains the integer n (1 ≤ n ≤ 100) — the number of citizens in the kingdom.

    The second line contains n integers a1, a2, …, an, where ai (0 ≤ ai ≤ 106) — the welfare of the i-th citizen.

    Output
    In the only line print the integer S — the minimum number of burles which are had to spend.

    Examples
    input
    5
    0 1 2 3 4
    output
    10
    input
    5
    1 1 0 1 1
    output
    1
    input
    3
    1 3 1
    output
    4
    input
    1
    12
    output
    0
    Note
    In the first example if we add to the first citizen 4 burles, to the second 3, to the third 2 and to the fourth 1, then the welfare of all citizens will equal 4.

    In the second example it is enough to give one burle to the third citizen.

    In the third example it is necessary to give two burles to the first and the third citizens to make the welfare of citizens equal 3.

    In the fourth example it is possible to give nothing to everyone because all citizens have 12 burles.

    【题目链接】:http://codeforces.com/contest/758/problem/A

    【题解】

    最后要求所有元素都相同;
    让所有的元素都变成最大值就好了;(不能减少只能增加)

    【完整代码】

    #include <bits/stdc++.h>
    
    using namespace std;
    
    int n,a[110];
    
    int main()
    {
        //freopen("F:\rush.txt","r",stdin);
        scanf("%d",&n);
        for (int i = 1;i <= n;i++)
            scanf("%d",&a[i]);
        int ma = a[1];
        for (int i = 2;i <= n;i++)
            ma = max(ma,a[i]);
        int sum = 0;
        for (int i = 1;i <= n;i++)
            if (a[i]<ma)
                sum += ma-a[i];
        cout << sum << endl;
        return 0;
    }
  • 相关阅读:
    C#中判断是否为数值
    html中网页自动刷新设置
    html中多行文本及文件提交
    商品库存秒杀方案总结
    记一次asp.net core 线上崩溃解决总结
    Eova 怎么放在 Docker中,使用阿里云流水线构建Eova!!
    阿里云 asp.net core nginx 单机部署
    Tidb go mac 上开发环境搭建
    jexus+.netcore+identityserver4 部署支持ssl(https)
    使用mha 构建mysql高可用碰到几个问题
  • 原文地址:https://www.cnblogs.com/AWCXV/p/7626711.html
Copyright © 2011-2022 走看看