zoukankan      html  css  js  c++  java
  • Codeforces 810 A.Straight «A»

     
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output
     

    Noora is a student of one famous high school. It's her final year in school — she is going to study in university next year. However, she has to get an «A» graduation certificate in order to apply to a prestigious one.

    In school, where Noora is studying, teachers are putting down marks to the online class register, which are integers from 1 to k. The worst mark is 1, the best is k. Mark that is going to the certificate, is calculated as an average of all the marks, rounded to the closest integer. If several answers are possible, rounding up is produced. For example, 7.3 is rounded to 7, but 7.5 and 7.8784 — to 8.

    For instance, if Noora has marks [8, 9], then the mark to the certificate is 9, because the average is equal to 8.5 and rounded to 9, but if the marks are [8, 8, 9], Noora will have graduation certificate with 8.

    To graduate with «A» certificate, Noora has to have mark k.

    Noora got n marks in register this year. However, she is afraid that her marks are not enough to get final mark k. Noora decided to ask for help in the internet, where hacker Leha immediately responded to her request. He is ready to hack class register for Noora and to add Noora any number of additional marks from 1 to k. At the same time, Leha want his hack be unseen to everyone, so he decided to add as less as possible additional marks. Please help Leha to calculate the minimal number of marks he has to add, so that final Noora's mark will become equal to k.

    Input

    The first line contains two integers n and k (1 ≤ n ≤ 100, 1 ≤ k ≤ 100) denoting the number of marks, received by Noora and the value of highest possible mark.

    The second line contains n integers a1, a2, ..., an (1 ≤ ai ≤ k) denoting marks received by Noora before Leha's hack.

    Output

    Print a single integer — minimal number of additional marks, that Leha has to add in order to change Noora's final mark to k.

    Examples
    Input
    2 10
    8 9
    Output
    4
    Input
    3 5
    4 4 4
    Output
    3
    Note

    Consider the first example testcase.

    Maximal mark is 10, Noora received two marks — 8 and 9, so current final mark is 9. To fix it, Leha can add marks [10, 10, 10, 10] (4 marks in total) to the registry, achieving Noora having average mark equal to . Consequently, new final mark is 10. Less number of marks won't fix the situation.

    In the second example Leha can add [5, 5, 5] to the registry, so that making average mark equal to 4.5, which is enough to have 5 in the certificate.

    这个题就是让你算要加几个K,使得总数的平均值四舍五入等于k。

    代码:

    #include<bits/stdc++.h>
    using namespace std;
    const int N=1e6;
    int main(){
        int a[100];
        int n,m;
        double sum,ave;
        while(~scanf("%d",&n)){
            scanf("%d",&m);
            sum=0;
            for(int i=0;i<n;i++){
                scanf("%d",&a[i]);
                sum+=a[i]*1.0;
            }
            ave=sum/n;
            if(ave>=(m*1.0-0.5)) printf("0
    ");
            else{
                for(int i=1;i<=N;i++){    //这里的N要大一些,我一开始写的i<=n*m,太小了,会wa
    sum
    +=m*1.0; ave=sum/(n+i); if(ave>=(m*1.0-0.5)){ printf("%d ",i); break; } } } } return 0; }
  • 相关阅读:
    spring 09-Spring框架基于QuartZ实现调度任务
    spring 08-Spring框架Resource资源注入
    spring 07-Spring框架Resource读取不同资源
    spring 06-Spring框架基于Annotation的依赖注入配置
    html 默认跳转
    poi 设置样式
    支付宝扫码支付回调验证签名
    构造器初始化
    cxf webservice
    CSS3 border-image 属性
  • 原文地址:https://www.cnblogs.com/ZERO-/p/6891244.html
Copyright © 2011-2022 走看看