奇妙的问题
  • 板块学术版
  • 楼主Rainsleep
  • 当前回复5
  • 已保存回复5
  • 发布时间2022/10/7 09:51
  • 上次更新2023/10/27 08:22:43
查看原帖
奇妙的问题
666796
Rainsleep楼主2022/10/7 09:51

P1816

关于询问,这两段代码的运行结果不同

1.

源代码复制
inline int query(int idx, int Ql, int Qr)
{

    if(Ql <= tr[idx].l and tr[idx].r <= Qr)
        return tr[idx].minn;

    int mid = tr[idx].l + tr[idx].r >> 1;
    int Lres = 0, Rres = 0 ;

    if(Ql <= mid)
        Lres = query(idx << 1, Ql, Qr);
    if(Qr > mid)
        Rres = query(idx << 1 | 1, Ql, Qr) ;

    return min(Lres, Rres);
}
inline int query(int idx, int Ql, int Qr)
{

	if(Ql <= tr[idx].l and tr[idx].r <= Qr)
		return tr[idx].minn;
	
	int mid = tr[idx].l + tr[idx].r >> 1;
	int Lres = INT_MAX, Rres = INT_MAX ;
	
	if(Ql <= mid)
		Lres = query(idx << 1, Ql, Qr);
	if(Qr > mid)
		Rres = query(idx << 1 | 1, Ql, Qr) ;
		
	return min(Lres, Rres);
}
2022/10/7 09:51
加载中...