真的无语死了啊,为什么CE
  • 板块灌水区
  • 楼主lcy0506
  • 当前回复13
  • 已保存回复13
  • 发布时间2024/8/2 16:17
  • 上次更新2024/8/2 17:12:08
查看原帖
真的无语死了啊,为什么CE
1044302
lcy0506楼主2024/8/2 16:17

RT

#include <bits/stdc++.h>
using namespace std;
long long a[5001][5001],n,m;
int lowbit(int x)
{
	return x&(-x);
}
void update(int x,int y,long long t)
{
	for(int i=x;i<=n;i+=lowbit(i))
	{
		for(int j=y;j<=m;j+=lowbit(j));
		{
			a[i][j]+=t;
		}
	}
}
long long query(long long x,long long y)
{
	long long res=0;
	for(int i=x;i;i-=lowbit(i))
	{
		for(int j=y;j;j-=lowbit(j))
		{
			res+=a[i][j];
		}
	}
	return res;
}
int main()
{
	int x;
	cin>>n>>m;
//	memset(a,0,sizeof(a));
	while(scanf("%d",&x)!=EOF)
	{
		int y,z,t,w;
		if(x==1)
		{
			cin>>y>>z>>t;
			update(y,z,t);
		}
		else if(x==2)
		{
			cin>>y>>z>>t>>w;
			cout<<query(t,w)-query(y-1,w)-query(t,z-1)+query(x-1,y-1)<<endl;
		}
	}
	return 0;
}
2024/8/2 16:17
加载中...