我在建树出问题了
查看原帖
我在建树出问题了
1228547
Jasper111楼主2024/10/24 22:54

我使用建树函数时返回值出问题,因该是死循环了,不知道怎么改

代码

#include<bits/stdc++.h>
using namespace std;
#define int long long

int a[100005];
int tree_s[300005];
int n,m;

int build_tree(int l,int r,int x)
{
	
	if(l==r)
	{
		tree_s[x]=a[l];
		return a[l];
	}
	int mid=(l+r)/2;
	
	+tree_s[x]=build_tree(1,mid,2*x)+build_tree(mid+1,n,2*x+1);
	return tree_s[2*x]+tree_s[2*x+1];
}
signed main()
{

	ios::sync_with_stdio(0);
	cout.tie(0),cout.tie(0);
	
	cin>>n>>m;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	build_tree(1,n,1);

	return 0;

}

2024/10/24 22:54
加载中...