疑似错解被ccf放过去了?
查看原帖
疑似错解被ccf放过去了?
993065
nnn233楼主2024/11/6 07:18

rt,这是本人的考场局部代码,用来判断加速度为正的车会被哪个区间的测速仪检测到超速

if(a[i]>0){
	if(cs(i,m)&&p[m]>=d[i]){
		int l=1,r=m,mid,ll=-1,rr=-1;
		while(l<=r){
			mid=(l+r)>>1;
//			cout<<p[mid]<<" "<<d[i]<<"\n";
			if(p[mid]<d[i])l=mid+1;
			else r=mid-1,ll=mid;
		}
		ans1++;
		q[++cnt].l=ll,q[cnt].r=m;
   }
}

其中 cs(i,m) 是用来判断第 ii 车是否会在第 mm 个测速仪超速的函数,按理来说if(p[mid]<d[i])l=mid+1;这一行中的条件也应该写!cs(i,mid),因为要找第一个检测到超速的测速仪,但代码中写的是找第一个碰到的的测速仪,而这份代码仍然通过了ccf所有的测试数据。

2024/11/6 07:18
加载中...