[Hackerrank]Max min sum(排序)

题意:
给定一个数组,要求去掉一个元素,求剩余元素中最大值与最小值的差值。

思路:
排序
两种选择:去掉原数组最小的值或者是最大的值。

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <string>
#include <queue>
#include <vector>
#include <utility>
#include <cmath>
#define inf 0x7fffffff
#define ll long long

using namespace std;
int a[100005];

int main()
{
    int n;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
        scanf("%d",&a[i]);
    sort(a,a+n);
    printf("%d\n",min(a[n-1]-a[1],a[n-2]-a[0]));
    return 0;
}
发布了22 篇原创文章 · 获赞 1 · 访问量 440

猜你喜欢

转载自blog.csdn.net/qq_43032263/article/details/104447308