加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Daily5.cpp 745 Bytes
一键复制 编辑 原始数据 按行查看 历史
#define _CRT_SECURE_NO_WARNINGS
#include<bits/stdc++.h>
using namespace std;
int dp[5050][5050];
int n, r;
int main()
{
scanf("%d%d", &n, &r);
memset(dp, 0, sizeof(dp));
while (n--)//数据读入
{
int x, y, v;
scanf("%d%d%d", &x, &y, &v);
dp[x + 1][y + 1] = v;
}
for (int i = 1; i < 5002; ++i)
for (int j = 1; j < 5002; ++j)
dp[i][j] = dp[i][j] + dp[i][j - 1] + dp[i - 1][j] - dp[i - 1][j - 1];//二维前缀和预处理
int ans = 0;
for (int i = r; i < 5002; ++i)
for (int j = r; j < 5002; ++j)
{
int p = dp[i][j] - dp[i][j - r] - dp[i - r][j] + dp[i - r][j - r];//递推
ans = max(p, ans);
}
printf("%d\n", ans);
return 0;
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化