• C++的sort排序法


    引用hduoj2014题:

    Problem Description
    青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。
     

    Input
    输入数据有多组,每组占一行,每行的第一个数是n(2<n<=100),表示评委的人数,然后是n个评委的打分。
     

    Output
    对于每组输入数据,输出选手的得分,结果保留2位小数,每组输出占一行。
     

    Sample Input
    3 99 98 97 4 100 99 98 97
     

    Sample Output
    98.00 98.50

    源码:

    #include <stdio.h>
    #include<algorithm>//bits/stdc++.h
    using namespace std;
    bool cmp(int a,int b)
    {
        return a>b;//降序排列 ,若返回a<b,则升序(此时可省略该函数) 
    }
    int main()
    {
        int n,temp,sum;
        int a[100];
        float d;
        while(~scanf("%d",&n))
        {
            d=0;
            sum=0;
            int a[100];
            for(int i=0;i<n;i++)
            {
                scanf("%d",&a[i]);            
            }
             sort(a,a+n,cmp);//默认升序排列,可省略“,cmp”,若降序排列则务必加上
            for(int i=1;i<=(n-2);i++)
            {
                sum+=a[i];
            }
            d=sum/(n-2.0);
            printf("%.2f
    ",d);
        }
        return 0;
    }

  • 相关阅读:
    Promise
    ajax基础
    flex布局的盒子模型
    css3核心模块
    响应式开发
    HTML5标签及表单
    JS面向对象编程
    JS面向对象的编程
    ES5构造函数与ES6类
    类欧几里得算法
  • 原文地址:https://www.cnblogs.com/cnlik/p/11851922.html
Copyright © 2020-2023  润新知