551 灌溉

server/2025/1/12 3:15:08/

 常规解法:
 

 

#include<bits/stdc++.h>
using namespace std;
int n,m,k,t;
const int N=105;
bool a[N][N],b[N][N];
int cnt;
//设置滚动数组来存贮当前和下一状态的条件
//处理传播扩散问题非常有效int main()
{cin>>n>>m>>t;for(int i=1;i<=t;i++){int x,y;cin>>x>>y;a[x][y]=1;}cin>>k;while(k--)//k次循环{for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(a[i][j]) b[i][j]=b[i+1][j]=b[i-1][j]=b[i][j+1]=b[i][j-1]=1;}//现在影响下一分钟的水//将自己和周围的全部更新}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){a[i][j]=b[i][j];//将下一分钟的复制给原数组}}}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(a[i][j]) cnt++;}}cout<<cnt;return 0;
}

技巧性比较强:曼哈顿路径

#include<bits/stdc++.h>
using namespace std;
int n,m,t,k,ans=0;
int x[15],y[15];
//解题的思路:
/*
问在k分钟之内能灌溉多少个,
反向转化为k分钟覆盖的范围是多少,有多少个点在这个范围之内。曼哈顿距离的联系:
题目中描述的水每经过一分钟,就会向上下左右四个方向扩展一个方格,
这种扩散方式正是曼哈顿距离所描述的移动方式。为什么满足曼哈顿距离就可以
某个方格与至少一个出水管的曼哈顿距离小于等于k,那么这个方格在k分钟后就会被灌溉。
对于一个点(1,1)和另一个点(3,4)曼哈顿距离为5,具体的来说就是右走2个下走3个。
关于题目中的扩散模式,感觉上好像是同时能够向下和向右推进,但是这不是同一个点:
即向下走完3个还需要向右走2两个,向右走完2个还需要向下走3个。
*/
int main()
{cin>>n>>m>>t;for(int i = 1;i <= t;i ++)cin >> x[i] >> y[i];int k;cin>>k;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){for(int z=1;z<=t;z++){int d=abs(x[z]-i)+abs(y[z]-j);if(d<=k){ans++;break;}}}    }cout<<ans<<'\n';return 0;
}


http://www.ppmy.cn/server/157651.html

相关文章

SQL Server中可以通过扩展事件来自动抓取阻塞

在SQL Server中可以通过扩展事件来自动抓取阻塞&#xff0c;以下是详细流程&#xff1a; 开启阻塞跟踪配置&#xff1a; • 执行以下SQL语句来启用相关配置&#xff1a; EXEC sp_configureshow advanced options, 1; RECONFIGURE; EXEC sp_configure blocked process thresh…

升级 Spring Boot 3 全项目讲解 — 给项目增加聊天对话功能

学会这款 &#x1f525;全新设计的 Java 脚手架 &#xff0c;从此面试不再怕&#xff01; 1. Spring Boot 3 升级指南 在升级 Spring Boot 3 之前&#xff0c;确保你的项目已经迁移到 Java 17&#xff0c;因为 Spring Boot 3 不再支持 Java 8 和 Java 11。接下来&#xff0c;我…

WebSocket 实现指南

WebSocket 实现指南 目录 1. 依赖安装 1.1 安装必要的包 # 安装 gorilla/websocket go get github.com/gorilla/websocket# 安装 gin 框架 go get github.com/gin-gonic/gin1.2 更新 go.mod require (github.com/gin-gonic/gin v1.9.1github.com/gorilla/websocket v1.5.3…

TP8 前后端分离开发验证码总是验证不正确问题

原因&#xff1a; 单独访问(不是前后端分离)每次前端生成验证码&#xff0c;都会带PHPSESSID值传递给后端&#xff0c;所以正常 前后端分离&#xff1a;前端每次不带PHPSESSID值传递给后端&#xff0c;所以后端每次都给一个新身份PHPSESSID值前端&#xff0c;造成前端每次PHPS…

《通过财报看企业》

“借贷关系”“净资产收益率”“财务报表”、净利润、盈利能力、现金流 第1章 净利润&#xff1a;决定一家公司的股价能涨多高 企业经营&#xff1a;存货周转率 企业市值&#xff1a;市值净利润市盈率 龙头企业&#xff1a;行业内收入规模最大、盈利能力最强&#xff0c;…

【面试题】技术场景 6、Java 生产环境 bug 排查

生产环境 bug 排查思路 分析日志&#xff1a;首先通过分析日志查看是否存在错误信息&#xff0c;利用之前讲过的 elk 及查看日志的命令缩小查找错误范围&#xff0c;方便定位问题。远程 debug 适用环境&#xff1a;一般公司正式生产环境不允许远程 debug&#xff0c;多在测试环…

需求:h5和小程序预览图片需要有当前第几张标识

1.小程序直接使用api&#xff1a;uni.previewImage 2.h5使用轮播图写一个组件 <template><view class"custom-image-preview" v-if"visible"><view class"overlay"></view><swiper class"swiper" :curre…

EG2133 (三相独立半桥驱动芯片)的功能介绍

目录 概述 1 功能介绍 1.1 基本介绍 1.2 主要特性 2 芯片硬件特性 2.1 引脚定义 2.2 芯片内部实现框图 2.3 经典应用电路 3 应用设计要求 3.1 VCC电压 3.2 输入逻辑信号要求和输出驱动器特性 3.3 输入信号和输出信号逻辑真值表 4 电气特性 概述 本文主要介绍EG2133 …