【题解】【CF1041A】Heist

版权声明:本文为博主原创文章,需转载请联系博主。 https://blog.csdn.net/ezoixx130/article/details/82763639

题意:

有许多的键盘,这些键盘的编号连续,但是某些键盘被偷了,现在给你剩下的键盘的编号,求被偷的键盘数量的最小值。

题解:

由于键盘编号连续,那么最少的键盘数量就一定是最大的键盘编号减去最小的键盘编号再加一。

所以只需统计出所有键盘的编号的最大值maxn和最小值minn,输出maxn-minn+1-n即可。

时间复杂度:O(n)

#include <bits/stdc++.h>
using namespace std;

int n,a[1001],maxn,minn=2147483647;

int main()
{
    scanf("%d",&n);
    for(int i=1;i<=n;++i)
        scanf("%d",a+i),maxn=max(maxn,a[i]),minn=min(minn,a[i]);
    printf("%d\n",maxn-minn+1-n);
}

猜你喜欢

转载自blog.csdn.net/ezoixx130/article/details/82763639