社区讨论

求助,吸氧能对,不吸就错

学术版参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@mi7umdcb
此快照首次捕获于
2025/11/21 03:53
4 个月前
此快照最后确认于
2025/11/21 03:53
4 个月前
查看原帖
rt,有段代码开O2就是对的,并给我一段警告,
不开没警告但是会错。
[Warning] iteration 2u invokes undefined behavior [-Waggressive-loop-optimizations]
[Note] containing loop
CPP
for(int t=1;t<=m;t++){
		hd=0,tl=1;seg[t].x=1e6,seg[t].y=0;
		memset(mp,0,sizeof mp);
		q[1]=rec(1,t);mp[1][t]=1;
		while(hd!=tl){
			p=q[++hd];
			if(p.x==n) g[p.y]=1,seg[t].x=min(p.y,seg[t].x),seg[t].y=max(seg[t].y,p.y);
			for(int i=1;i<=4;i++){
				nx=p.x+dx[i],ny=p.y+dy[i];
				if(nx<1||nx>n||ny<1||ny>m) continue;
				if(mp[nx][ny]) continue;
				if(h[nx][ny]>=h[p.x][p.y]) continue;
				q[++tl]=rec(nx,ny),mp[nx][ny]=1;
			}
		}
	}
这警告好像是for循环i的那边的,不懂,求助

回复

2 条回复,欢迎继续交流。

正在加载回复...