#NOIP 2014#day.2 T1 无限网络发射器选址
来源:互联网 发布:南泥湾种鸦片 知乎 编辑:程序博客网 时间:2024/05/18 03:54
为了方便处理我们把x++,y++预留出一个空白行和空白列
#include<cstdio>#include<iostream>#include<cmath>#include<cstring>#include<algorithm>using namespace std;int d,n;#define maxn 140int a[maxn][maxn];int sum[maxn][maxn];int ans = 0, tot = 0;int main(){ #define LOC #ifdef LOC freopen("wireless.in","r",stdin); freopen("wireless.out","w",stdout); #endif scanf("%d",&d); scanf("%d",&n); int x,y; for(int i=0;i<n;i++) { scanf("%d%d",&x,&y); x++,y++; if(x>129||y>129)continue; scanf("%d",&a[x][y]); } sum[1][1]=a[1][1]; for(int i=2;i<=129;i++)sum[1][i]=sum[1][i-1]+a[1][i]; for(int j=2;j<=129;j++)sum[j][1]=sum[j-1][1]+a[j][1]; for(int i=2;i<=129;i++) { for(int j=2;j<=129;j++) { sum[i][j]=sum[i][j-1]+sum[i-1][j]+a[i][j]-sum[i-1][j-1]; } } for(int i=1;i<=129;i++) { for(int j=1;j<=129;j++) { int dx = max(0,i-d-1); int kx = min(129,i+d); int dy = max(j-d-1,0); int ky = min(129,j+d); int _tot = sum[kx][ky]-sum[dx][ky]-sum[kx][dy]+sum[dx][dy]; if(_tot==tot)ans++; else if(_tot>tot) { ans = 1; tot = _tot; } } } printf("%d %d",ans,tot); return 0;}/*对于 100%的数据, 1 ≤ d ≤ 20, 1 ≤ n ≤ 20, 0 ≤ x ≤ 128, 0 ≤ y ≤ 128, 0 < k ≤1,000,000。 输出一行,包含两个整数, 用一个空格隔开,分别表示能覆盖最多公共场所的安装地点方案数,以及能覆盖的最多公共场所的数量。*/
0 0
- #NOIP 2014#day.2 T1 无限网络发射器选址
- NOIP 2014 Day2 T1 无线网络发射器选址
- NOIP 2014 提高组 Day2 T1 无线网路发射器选址
- Codevs 无限网络发射器选址
- [T][2]NOIP 2014 无线网络发射器选址
- Noip 2014 无线网络发射器选址
- Codevs 3578 无线网络发射器选址== NOIP 2014 Day2 T1
- NOIP 2014 提高组 无线网路发射器选址
- 【NOIP2014 Day2 T1】无线网络发射器选址
- noip2014 D2,T1无线网络发射器选址题解
- NOIP 2013 day 2 t1 t2
- Noip2014 Day2 T1 无线网络发射器选址(暴力)
- 发射器选址
- 【NOIP2014TG】无线网络发射器选址
- NOIP2014 无线网络发射器选址
- 1877 无线网络发射器选址
- NOIP2014无线发射器选址
- 【Noip2014】无线网络发射器选址
- Stay Hungry. Stay Foolish.
- 克里斯航沥斯夫斯基定律------------原创
- 列表、元组以及字符串
- cygwin 2.8.74版本离线包(分别为win7 32和64位)
- xml解析工具类
- #NOIP 2014#day.2 T1 无限网络发射器选址
- 09.树.二叉树
- node.js
- PAT 1020Are They Equal (25)
- 渗透测试攻防练习实验室 (资源分享,国外在线教程)
- 原生js判断浏览器与平台
- 从理论认识J2EE
- cannot resolve corresponding JNI function
- DAY01_Q1