比赛 图论练习和一些常规题 评测结果 AAAAAAAAAA
题目名称 无线网路发射器选址 最终得分 100
用户昵称 Xiaokang_Zhao120 运行时间 0.060 s
代码语言 C++ 内存使用 1.25 MiB
提交时间 2018-06-24 15:57:16
显示代码纯文本
#include<cstdio>
#include<algorithm>
using namespace std;

const int maxn=129;
int s[maxn+10][maxn+10];

int main()
{
    freopen("wireless.in","r",stdin);freopen("wireless.out","w",stdout);
    int d,n,i,j,x,y,k;
    int lx,rx,ly,ry;
    int sum,ans1=0,ans2=0;
    scanf("%d%d",&d,&n);
    for(i=1; i<=n; i++)
    {
        scanf("%d%d%d",&x,&y,&k);
        s[x][y]=k;
    }
    for(i=0; i<=128; i++)
        for(j=0; j<=128; j++)
        {
            lx=max(0,i-d),rx=min(i+d,128);
            ly=max(0,j-d),ry=min(j+d,128);
            for(sum=0,x=lx; x<=rx; x++)
                for(y=ly; y<=ry; y++)
                    sum+=s[x][y];
            if(sum>ans2)
                ans1=1,ans2=sum;
            else if(sum==ans2)
                ans1++;
        }
    printf("%d %d\n",ans1,ans2);
    return 0;
}