202104-2领域均值

在这里插入图片描述
在这里插入图片描述

#include<bits/stdc++.h>
#define MAX 601
using namespace std;
using gg=long long;
gg ni,Li,r,ti;
int arr[MAX][MAX];
int cur[MAX][MAX];
gg res=0;
void fun()
{
    int x_left,x_right,y_down,y_up;
    for(int i=0;i<ni;i++)
    {
        for(int j=0;j<ni;j++)
        {
            x_left=(i-r>0?i-r:0);
            x_right=(i+r<ni?i+r:ni-1);
            y_down = (j-r>0?j-r:0);
            y_up=(j+r<ni?j+r:ni-1);
            gg temp = (x_right-x_left+1)*(y_up-y_down+1);
            gg all=temp*ti;//这个值的领域和
            gg sum = 0;
            for(int k=x_left;k<=x_right;k++)
            {
                sum+=(arr[k][y_up]-arr[k][y_down]+cur[k][y_down]);
                if(sum>all)
                {
                    res+=1;
                    break;
                }
            }
        }
    }
}
int main()
{
    cin>>ni>>Li>>r>>ti;
    int x;
    for(int i=0;i<ni;i++)
    {
        for(int j=0;j<ni;j++)
        {
            cin>>x;
            cur[i][j]=x;
            arr[i][j]=(j==0?x:arr[i][j-1]+x);
        }
    }
    fun();
    cout<<(ni*ni-res)<<"\n";
    return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值