代码:
#include <iostream>
#include <vector>
#include <algorithm>
#define int long long
using namespace std;
void func(vector<bool> &flag,const vector<int> &a,int i,int &t){
flag[i]=true;
for (int j=i+1;j<a.size();++j){
if (flag[j]){
continue;
}
if (a[j]-a[i]==1){
++t;
func(flag,a,j,t);
break;
}
}
}
signed main(){
int n;
cin >> n;
vector<int> a;
vector<bool> flag(n,false);
for (int i=0;i<n;++i){
int t;
cin >> t;
a.emplace_back(t);
}
sort(a.begin(),a.end());
int ans=0x3f3f3f3f;
for (int i=0;i<n;++i){
if (flag[i]){
continue;
}
int t=1;
func(flag,a,i,t);
ans=min(t,ans);
}
cout<<ans<<endl;
return 0;
}
评测记录
先不管TLE,就说为什么会WA。。。