2017.3.17 激光炸弹 思考记录
2017-03-17 20:19
169 查看
二维前缀和,、
但是一上来还是小卡了一下,考虑了一会二分,毕竟n^2不太保险,但好在还是过了,虽然常数比较大、
另外有个小处理:读入时R要--,就可以避免边被选的情况、、其实很简单
(竟然卡两个5000*5000的数组、。、)
码:
#include<iostream>
#include<cstdio>
using namespace std;
#include<cstring>
int sum[5001][5001],line[5001],i,j,n,R,x,y,z,lin,ans;
void calc()
{
for(i=0;i<=5000;i++)
{memset(line,0,sizeof(line));
for(j=0;j<=5000;j++)
{
line[j]+=sum[i][j];
if(j!=0)sum[i][j]+=line[j-1],line[j]+=line[j-1];
if(i!=0)sum[i][j]+=sum[i-1][j];
}
}
}
int main()
{
scanf("%d%d",&n,&R);
R--;
for(i=1;i<=n;i++)
{
scanf("%d%d%d",&x,&y,&z);
sum[x][y]=z;
}
calc();
for(i=0;i<=5000-R;i++)
for(j=0;j<=5000-R;j++)
{
lin=sum[i+R][j+R];
if(j!=0)lin-=sum[i+R][j-1];
if(i!=0)lin-=sum[i-1][j+R];
if(j!=0&&i!=0)lin+=sum[i-1][j-1];
ans=max(ans,lin);
}
printf("%d",ans);
}
但是一上来还是小卡了一下,考虑了一会二分,毕竟n^2不太保险,但好在还是过了,虽然常数比较大、
另外有个小处理:读入时R要--,就可以避免边被选的情况、、其实很简单
(竟然卡两个5000*5000的数组、。、)
码:
#include<iostream>
#include<cstdio>
using namespace std;
#include<cstring>
int sum[5001][5001],line[5001],i,j,n,R,x,y,z,lin,ans;
void calc()
{
for(i=0;i<=5000;i++)
{memset(line,0,sizeof(line));
for(j=0;j<=5000;j++)
{
line[j]+=sum[i][j];
if(j!=0)sum[i][j]+=line[j-1],line[j]+=line[j-1];
if(i!=0)sum[i][j]+=sum[i-1][j];
}
}
}
int main()
{
scanf("%d%d",&n,&R);
R--;
for(i=1;i<=n;i++)
{
scanf("%d%d%d",&x,&y,&z);
sum[x][y]=z;
}
calc();
for(i=0;i<=5000-R;i++)
for(j=0;j<=5000-R;j++)
{
lin=sum[i+R][j+R];
if(j!=0)lin-=sum[i+R][j-1];
if(i!=0)lin-=sum[i-1][j+R];
if(j!=0&&i!=0)lin+=sum[i-1][j-1];
ans=max(ans,lin);
}
printf("%d",ans);
}
相关文章推荐
- 2017.9.23 Count on a tree 思考记录
- 2017.9.30 CF #R4 D 思考记录
- 2017.5.9 寻找道路 思考记录
- 2017.10.11 network 网络扩容 思考记录
- 2017.3.6~2017.3.7 Harry And Magic Box 思考记录(特别不容易)
- 平日思考小小的记录
- 对LMAX架构以及Event Sourcing模式的一些新思考和问题的记录
- bzoj1218 激光炸弹 二维前缀和
- P2280 [HNOI2003]激光炸弹
- 2017.3.22 小z的袜子 思考记录
- bzoj 1218: [HNOI2003]激光炸弹 暴力
- 【bzoj1218】 [HNOI2003]激光炸弹
- 2017.4.1 kth_number 思考记录
- 2017.9.10 连续攻击游戏 思考记录
- 2017.9.13 序列统计 思考记录
- BZOJ1218: [HNOI2003]激光炸弹
- 2017.4.19 数列 思考记录
- 2017.4.21 螺旋矩阵 思考记录
- 2017.9.26 块的计数 思考记录
- bzoj 4942 整数 思考记录