题目
我的代码
#include<bits/stdc++.h>
using namespace std;
int n,m,a[1000005];
int main(){
cin>>m>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
sort(a+1,a+1+n);
int s=1,d=0,c=0;
int z=0;
for(int i=1;i<=n+1;i++)
{
if(a[i]==a[i-1]) s++;
else
{
d=n;
if(s!=1&&s%m!=0) z=1;
for(int j=1;j<=s/m;j++) a[++n]=a[i-1]+1;
s=1;
sort(a+1,a+1+n);
}
}
if(n-d>=1) z=1;
cout<<a[n]+z;
return 0;
}
能对大部分,但是差16%