求助,91分,#8 WA
查看原帖
求助,91分,#8 WA
367619
otislee601楼主2021/7/16 21:12
#include <iostream> 
#include <cstdio>
using namespace std;
int n,m,map[5005][5005],ans;
int main()
{
	cin >> n >> m;
	for(int x,y,v,i=0;i < n;++i)
	{
		cin >> x >> y >> v;
		map[x+1][y+1]=v;
	}
	for(int i = 1;i <= 5001;++i)
		for(int j = 1;j <= 5001;++j)
		map[i][j]=map[i-1][j]+map[i][j-1]-map[i-1][j-1]+map[i][j];
//	for(int i = 1;i <= 5;++i)
//	{
//		for(int j = 1;j <= 5;++j)
//		cout << map[i][j] << ' ';
//		puts("");
//	}
	m=min(m,5001);
	for(int i=2;i<=5005;i++){
		map[1][i]+=map[1][i-1];
		map[i][1]+=map[i-1][1];
	}   
	for(int i = 1;i <= 5001-m;++i)
		for(int j = 1;j <= 5001-m;++j)
		ans=max(ans,map[i+m][j+m]-map[i][j+m]-map[i+m][j]+map[i][j]);
	cout << ans << endl;
	return 0;
}

我一直看不出来问题,麻烦dalao帮忙看一下

2021/7/16 21:12
加载中...