!!!???
by 035966_L3 @ 2022-10-13 11:00:49
~~好,我投一篇:~~
```cpp
#include<bits/stdc++.h>
using namespace std;
const int PTA=524287;
int a[1200012];
int fm(int l,int r,int ii,int aa,int xb)
{
while(1)
{
if(l==ii&&r==aa) return a[xb];
int lmid=(ii+aa)>>1,rmid=lmid+1;
if(l>=rmid) {ii=rmid,xb<<=1,xb++;continue;}
if(r<=lmid) {aa=lmid,xb<<=1;continue;}
if(r==aa) return max(a[(xb<<1)+1],fm(l,lmid,ii,lmid,(xb<<1)));
if(l==ii) return max(a[(xb<<1)],fm(rmid,r,rmid,aa,(xb<<1)+1));
return max(fm(l,lmid,ii,lmid,(xb<<1)),fm(rmid,r,rmid,aa,(xb<<1)+1));
}
}
void gn(int pos,int nval)
{
int vpos=PTA+pos,spos=vpos;
a[vpos]=nval;
while(spos>1) spos>>=1,a[spos]=max(a[(spos<<1)],a[(spos<<1)+1]);
}
int y[300012];
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>y[i];
sort(y+1,y+n+1,greater<int>());
for(int i=1;i<=n;i++)
gn(i,y[i]+i);
int ans=0;
for(int i=1;i<=n;i++)
{
if(fm(1,n,1,PTA+1,1)<y[i]+n) ans++;
gn(i,a[PTA+i]-1);
}
cout<<ans;
return 0;
}
```
by 035966_L3 @ 2022-10-13 11:02:12
@[dottle](/user/79067) @[小粉兔](/user/10703)
by ivyjiao @ 2022-10-13 11:02:20
> 不应在代码中加入防抄袭内容。
by ivyjiao @ 2022-10-13 11:03:40
@[ivyjiao](/user/578029) 注意到其中有一篇题解是兔队的
by little_cindy @ 2022-10-13 11:05:51
@[ivyjiao](/user/578029)
让 @[小粉兔](/user/10703) 撤 @[小粉兔](/user/10703) 的题解,小心被暴政……
by 035966_L3 @ 2022-10-13 11:06:19
@[wosizmcy](/user/365654) 那我现在咋办啊![](//啧.tk/jk)
by ivyjiao @ 2022-10-13 11:08:29
@[ivyjiao](/user/578029) 艹,我撤我自己
by a2lyaXNhbWUgbWFyaXNh @ 2022-10-13 11:12:55
@[ivyjiao](/user/578029) 趁小粉兔还没发现把这篇贴删了吧
by space_sea @ 2022-10-13 11:31:33
@[Johnson_Walkermyson](/user/746790) 多头已经pushback了,不能删
by ivyjiao @ 2022-10-13 11:34:19