关于二分查找LIS模板
  • 板块学术版
  • 楼主Memory_Lin
  • 当前回复2
  • 已保存回复2
  • 发布时间2022/12/3 16:01
  • 上次更新2023/10/27 00:37:34
查看原帖
关于二分查找LIS模板
705081
Memory_Lin楼主2022/12/3 16:01

Rt为什么在“if(a[i]<=f[mid]) r=mid”这行中,如果换用成r=mid-1会发生错误?

锰锌在线求解qwq~~~

for(int i=2;i<=n;i++){
		int l=0,r=len,mid;
		if(a[i]>f[len]) f[++len]=a[i];
		else{
			while(l<r){
				mid=(l+r)/2;
				if(a[i]<=f[mid]) r=mid;
				else l=mid+1;
			}
			f[l]=min(f[l],a[i]);
		}
	}
2022/12/3 16:01
加载中...