求助
  • 板块学术版
  • 楼主bdfs_then_csdn
  • 当前回复5
  • 已保存回复5
  • 发布时间2021/4/20 19:24
  • 上次更新2023/11/5 00:18:52
查看原帖
求助
369041
bdfs_then_csdn楼主2021/4/20 19:24

这个程序的时间复杂度是不是n log n啊

#include<bitsdc++.h>
using namespace std;
const int sh=500001;
int n,m,t,h,w[sh]={0},rt,ansd=0,ans,hi=0,pp;
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		scanf("%d",&h);
		if(h<0) hi=max(hi,abs(h)+1);
		else w[++pp]=max(hi,h);
	}
	sort(w+1,pp+w+1);
	for(int i=1;i<=m;i++){
		scanf("%d",&t);
		rt=t^ans;
		ans=pp-(upper_bound(w+1,w+pp+1,rt)-w)+1;
		cout<<ans<<endl;
	}
	return 0;
}

我去打一个5e5的题,T了

2021/4/20 19:24
加载中...