AcWing 1738. 蹄球
原题链接
简单
基环图
#include <bits/stdc++.h>
#include <algorithm>
#include <cstring>
#include <queue>
#include <vector>
#define IO (ios::sync_with_stdio(false),cin.tie(0),cout.tie(0))
#define rep(i,a,n) for(int i=a;i<=n;i++)
#define per(i,a,n) for(int i=a;i>=n;i--)
#define fors(i,a,b) for(int i = a; i < b; ++i)
#define debug(x) cerr<<#x<<" = "<<x<<endl
#define x first
#define y second
using namespace std;
typedef long long ll;
typedef pair<int,int> PII;
const ll mod = 1e9+7;
const int N = 1e2+10;
int n, m;
int a[N], d[N], q[N];
int main()
{
cin >> n;
rep(i, 1, n) cin >> a[i];
a[0] = -1e9, a[n + 1] = 1e9;
sort(a + 1, a + n + 1);
for (int i = 1; i <= n; i ++ )
if (a[i] - a[i - 1] <= a[i + 1] - a[i])
{
q[i] = i - 1;
d[i - 1] ++ ;
}
else
{
q[i] = i + 1;
d[i + 1] ++ ;
}
int res = 0;
for (int i = 1; i <= n; i ++ )
if (!d[i]) res += 2;
else if (q[q[i]] == i && d[i] == 1 && d[q[i]] == 1)
res ++ ;
cout << res / 2;
return 0;
}