谁能告诉我我线段树的bulid哪里打错了
  • 板块学术版
  • 楼主gghack_Nythix
  • 当前回复11
  • 已保存回复11
  • 发布时间2023/1/13 19:40
  • 上次更新2023/10/24 04:23:37
查看原帖
谁能告诉我我线段树的bulid哪里打错了
895690
gghack_Nythix楼主2023/1/13 19:40

rt,蒟蒻刚学线段树半小时

#include <bits/stdc++.h>
#define int long long
using namespace std;
const int MAX = 1000000;
struct seg_tr{
	int l,r;
	int mx,sum;
	int lazy;
}tr[MAX];
int a[MAX];
void bulid_tr(int id,int l,int r){
	tr[id].l = l;
	tr[id].r = r;
	if(l == r){
		tr[id].sum = a[l];
		tr[id].mx = a[r];
	}
	int mid = (l + r) >> 1;
	bulid_tr(id >> 1 + 1,l,r);
	bulid_tr(id >> 1 + 2,mid + 1,r);
	tr[id].sum = tr[id >> 1 + 1].sum + tr[id >> 1 + 2].sum;
	tr[id].mx = max(tr[id >> 1 + 1].mx,tr[id * 2 + 2].mx);
}
signed main()
{
	bulid_tr(1,1,500);
	cout << "endd";
	return 0;
}
2023/1/13 19:40
加载中...