C06.L11.二维前缀和.课堂练习2.打砖块(brick)

news/2024/10/21 4:37:31/

hi!我是AC使者!

题目描述

KXT 是一个很无聊的小朋友,一天到晚都在打坐......

一天,被他发现了一个比打坐更无聊的事情——打砖块。很多块砖分布在一个m*mm∗m 的矩阵中,他可以消掉以他为左上角顶点的一个 n*nn∗n 的矩阵里的所有砖块。

喜欢偷懒的他请来了你帮他计算可以消掉最多的砖块数(只能消一次)。

输入格式

第一行:用空格隔开的三个整数 nn、mm、kk。

接下来 kk 行,每行 22 个用空格隔开的整数 x_ixi​、y_iyi​,表示第 ii 块砖在 x_ixi​ 行、y_iyi​ 列的位置。

数据范围

n \le mn≤m; k \le m*mk≤m∗m

60% 的数据:n \le 70n≤70; m \le 70m≤70; k \le 4900k≤4900

100% 的数据:n \le 1000n≤1000; m \le 1000m≤1000; k \le 1000000k≤1000000;

输出格式

一个整数,为可以消掉最多的砖块数。

样例

输入数据 1

5 10 11
2 1
4 6
4 9
3 9
9 7
9 9
7 9
8 10
8 8
8 6
10 2

Copy

输出数据 1

6

Copy

样例解释

站在第 4 行、 6 列的位置,可以消除 6 个方块。

答案:

#include<bits/stdc++.h>
using namespace std;
const int t=1001;
void construction(int n,int m,int array[][t],int prefix[][t])
{for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){prefix[i][j]=prefix[i-1][j]+prefix[i][j-1]-prefix[i-1][j-1]+array[i][j];}}
}
int regionsum(int n,int m,int xf,int xs,int yf,int ys,int prefix[][t])
{return prefix[xs][ys]-prefix[xf-1][ys]-prefix[xs][yf-1]+prefix[xf-1][yf-1];
}
int n,m,k,a[t][t],x,y,ma[t][t],L;
int main(){cin>>n>>m>>k;for(int i=1;i<=k;i++){cin>>x>>y;a[x][y]=1;}construction(m,m,a,ma);for(int i=1;i<=m-n+1;i++){for(int j=1;j<=m-n+1;j++){L=max(L,regionsum(m,m,i,i+n-1,j,j+n-1,ma));}}cout<<L;return 0;
}

http://www.ppmy.cn/news/1540693.html

相关文章

无人机电机故障率骤降:创新设计与六西格玛方法论双赢

项目背景 TBR-100是消费级无人机头部企业推出的主打消费级无人机&#xff0c;凭借其出色的续航能力和卓越的操控性&#xff0c;在市场上获得了广泛认可。在产品运行过程&#xff0c;用户反馈电机故障率偏高&#xff0c;尤其是在飞行一段时间后出现电机过热、损坏以及运行不稳定…

ubuntu安装golang并设置goproxy

在Ubuntu上安装Go语言&#xff08;Golang&#xff09;通常有几种方法&#xff0c;以下是一些常见的安装步骤&#xff1a; 方法一&#xff1a;使用包管理器安装 更新包列表&#xff1a; sudo apt update安装Go&#xff1a; sudo apt install golang-go验证安装&#xff1a; go …

Kafka之消费者组与消费者

消费者&#xff08;Consumer&#xff09;在Kafka的体系结构中是用来负责订阅Kafka中的主题&#xff08;Topic&#xff09;&#xff0c;并从订阅的主题中拉取消息后进行处理。 与其他消息中间件不同&#xff0c;Kafka引入一个逻辑概念——消费组&#xff08;Consumer Group&…

《太吾绘卷》风灵月影游戏辅助好不好用?《太吾绘卷》风灵月影游戏辅助功能 全解析

太吾绘卷风灵月影修改器可调整游戏多项数据&#xff0c;助力玩家轻松过关。启动游戏后&#xff0c;按数字键1开启无敌模式&#xff0c;数字键2锁定时间&#xff0c;数字键3实现物品不消耗&#xff0c;Ctrl数字键1则能获得无限银钱等功能&#xff0c;为玩家提供全方位的游戏辅助…

IO进程---day5

1、使用有名管道实现两个进程之间的相互通信 //管道文件 #include<myhead.h> int main(int argc, const char *argv[]) {//创建有名管道文件1if(mkfifo("./pipe1",0664)-1){perror("创建管道文件失败");return 0;}if(mkfifo("./pipe2",066…

【无标题】海尔AI英语面试

1.自我介绍 Good morning. I am delighted to have this English interview. My name is fu guilin. I graduated from CDUT with a degree in Information engineering. During my university years, I have laid a solid foundation in my professional knowledge. I posses…

【项目案例】-音乐播放器-Android前端实现-Java后端实现

精品专题&#xff1a; 01.C语言从不挂科到高绩点 https://blog.csdn.net/yueyehuguang/category_12753294.html?spm1001.2014.3001.5482https://blog.csdn.net/yueyehuguang/category_12753294.html?spm1001.2014.3001.5482 02. SpringBoot详细教程 https://blog.csdn.ne…

Linux的Spark 环境部署

前言:需自行准备hadoop集群 1. Spark 是一款分布式内存计算引擎&#xff0c; 可以支撑海量数据的分布式计算。 Spark 在大数据体系是明星产品&#xff0c; 作为最新一代的综合计算引擎&#xff0c; 支持离线计算和实 时计算。 在大数据领域广泛应用&#xff0c; 是目前世界上使…