2020 GDUT Winter Personal Training Contest I (Div. 2) G - Array Stabilization 题解

什么?F题哪去了?不会,滚。

原题

在这里插入图片描述

题目大意

给出一个数组,要求去掉正好一个数之后,使数组最大值和最小值之差(instablility)最小

题目分析

很明显,不改变最大最小值就对这个不稳定值(?)完全没有影响,随便排个序或者找最大次大最小次小加加减减就行
这里用最简单的STL库【雾

代码

#include<cstdio>
#include<cstring>
#include<string>
#include<iostream>
#include<algorithm>
#define min(a,b) (a < b ? a : b);
 
int a[100010];
int main()
{
    int n;
    scanf("%d",&n);
    for (int i = 0;i < n;i++)
        scanf("%d",a + i);
    std::sort(a,a + n);
    int ans = min(a[n - 2] - a[0],a[n - 1] - a[1]);
    printf("%d",ans);
    return 0;
}
发布了16 篇原创文章 · 获赞 0 · 访问量 281

猜你喜欢

转载自blog.csdn.net/juseice/article/details/104024525