zoukankan      html  css  js  c++  java
  • 南邮NOJ 计算机基础知识大赛4

    计算机基础知识大赛 4

    时间限制(普通/Java) : 1000 MS/ 3000 MS          运行内存限制 : 65536 KByte
    总提交 : 81            测试通过 : 52 

    题目描述

    事实上同学们是不会排成整齐的队伍的,现在就有n个人在摊位前围成一团,而且要是不能及时得到服务就会不高兴的。这可让XX有点犯难了,假如每个同学都把需要的服务时间写在脸上,同学 需要的服务时间为 。那么XX以怎样的顺序怎样才能让大家总的等待时间最短。求出最小等待时间。

    输入

    输入数据包含多组样例,每组包含两行。
    第一行为一个整数n
    第二行为n个人所需时间(空格隔开)

    输出

    对于每组样例,输出最小等待时间。

    样例输入

    3
    1 2 3
    3
    1 2 3

    样例输出

    10
    10

    #include<iostream>
    #include<cstdio>
    #include<stdlib.h>
    using namespace std;
    #include<algorithm>
    #include<math.h>
    int comp(const void *a,const void *b)
    {
        return *(int*)a-*(int*)b;
    }
    int main()
    {
        int n;
        while(scanf("%d",&n)==1)
        {
            int a[n],time=0;
            for(int i=0;i<n;i++)
            {
                scanf("%d",&a[i]);
                time+=a[i];
            }
            qsort(a,n,sizeof(int),comp);
            for(int i=0;i<n-1;i++)
            {
                time+=a[i]*(n-i-1);
            }
            printf("%d
    ",time);
        }
    }
    


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    第四课:数字系统抽象
    第三课:叠加法和戴维南法
    第二课:基本电路法
    电路和电子学第一课:集总电路抽象
    第三十六课:告别演出
    第三十五课:多普勒效应和宇宙大爆炸
    第三十四课:光栅和分辨率
    第三十三课:干涉
    第三十二课:复习课
    第三十一集:彩虹
  • 原文地址:https://www.cnblogs.com/Tobyuyu/p/4965714.html
Copyright © 2011-2022 走看看