1191:流感传染

简介: 1191:流感传染

1191:流感传染

时间限制: 1000 ms         内存限制: 65536 KB

【题目描述】

有一批易感人群住在网格状的宿舍区内,宿舍区为n*n的矩阵,每个格点为一个房间,房间里可能住人,也可能空着。在第一天,有些房间里的人得了流感,以后每天,得流感的人会使其邻居传染上流感,(已经得病的不变),空房间不会传染。请输出第m天得流感的人数。

【输入】

第一行一个数字n,n不超过100,表示有n*n的宿舍房间。

接下来的n行,每行n个字符,’.’表示第一天该房间住着健康的人,’#’表示该房间空着,’@’表示第一天该房间住着得流感的人。

接下来的一行是一个整数m,m不超过100。

【输出】

输出第m天,得流感的人数。

【输入样例】

5

....#

.#.@.

.#@..

#....

.....

4

【输出样例】

16

【来源】

No

1. #include<iostream>
2. #include<stdio.h>
3. using namespace std;
4. char f[102][102];
5. int g[102][102]={0};
6. int xy[2][4]={{-1,0,1,0},{0,1,0,-1}};
7. int main()
8. {
9.  int n,m,i,j,k,l,sum=0;
10.   cin>>n;
11.   //初始化并标注 
12.   for(i=1;i<=n;i++) 
13.     for(j=1;j<=n;j++){
14.       cin>>f[i][j];
15.       if(f[i][j]=='@'){
16.         g[i][j]=1;sum++;
17.       }
18.     }
19.   cin>>m;
20.   for(k=2;k<=m;k++)
21.     for(i=1;i<=n;i++)
22.       for(j=1;j<=n;j++)
23.           for(l=0;l<4;l++){
24.             //判断该点的四周是否有前一天传染的邻居,找到即标注并退出 
25.             if((g[i+xy[0][l]][j+xy[1][l]]==(k-1))&&(f[i+xy[0][l]][j+xy[1][l]]=='@')&&(f[i][j]=='.')){
26.               f[i][j]='@';
27.               g[i][j]=k;
28.               sum++;
29.               break;
30.             }   
31.           } 
32.   printf("%d",sum);
33.   return 0;
34. }

 

相关文章
|
存储 安全 关系型数据库
Mysql 的binlog日志的优缺点
MySQL的binlog(二进制日志)是一个记录数据库更改的日志文件,它包含了所有对数据库执行的更改操作,如INSERT、UPDATE和DELETE等。binlog的主要目的是复制和恢复。以下是binlog日志的优缺点: ### 优点: 1. **数据恢复**:当数据库出现意外故障或数据丢失时,可以利用binlog进行点恢复(point-in-time recovery),将数据恢复到某一特定时间点。 2. **主从复制**:binlog是实现MySQL主从复制功能的核心组件。主服务器将binlog中的事件发送到从服务器,从服务器再重放这些事件,从而实现数据的同步。 3. **审计**:b
588 1
|
监控 BI API
利用ZABBIX进行服务器自动巡检并导出报表
利用ZABBIX进行服务器自动巡检并导出报表
利用ZABBIX进行服务器自动巡检并导出报表
|
存储 前端开发 安全
C++一分钟之-未来与承诺:std::future与std::promise
【6月更文挑战第27天】`std::future`和`std::promise`是C++异步编程的关键工具,用于处理未完成任务的结果。`future`代表异步任务的结果容器,可阻塞等待或检查结果是否就绪;`promise`用于设置`future`的值,允许多线程间通信。常见问题包括异常安全、多重获取、线程同步和未检查状态。解决办法涉及智能指针管理、明确获取时机、确保线程安全以及检查未来状态。示例展示了使用`std::async`和`future`执行异步任务并获取结果。
540 2
|
人工智能 Python
读取excel工具:openpyxl | AI应用开发
`openpyxl` 是一个 Python 库,专门用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件。它是处理 Excel 文件的强大工具,可以让你在不需要安装 Excel 软件的情况下,对 Excel 文件进行创建、修改、读取和写入操作【10月更文挑战第3天】
405 0
|
Ubuntu Linux 测试技术
在Ubuntu 18.04上安装Docker Compose的方法
在Ubuntu 18.04上安装Docker Compose的方法
848 0
|
JSON 关系型数据库 MySQL
MySQL 8.0 新特性
MySQL 8.0 新特性
463 10
MySQL 8.0 新特性
|
存储 Java
【数据结构】二叉树重点知识和OJ题汇总(附有代码)
【数据结构】二叉树重点知识和OJ题汇总(附有代码)
295 0
|
存储 安全 数据库
阿里云最新域名注册和续费、企业邮箱、云虚拟主机收费标准与价格参考
域名注册和续费以及企业邮箱和云虚拟主机是很多用户上云第一步需要购买的产品,从2024年9月1日开始,全球域名又迎来了一波价格上调,目前阿里云的.com英文域名的注册价格由原来的78元涨价到了83元,续费价格也涨到了90元,不过企业新用户注册有1元购等活动。企业邮箱目前活动价540.00元/1年起,云虚拟主机独享基础增强版月付49元/1个月起,年付588元/1年起。本文为大家整理汇总了截止目前,阿里云域名注册和续费及转入收费标准、企业邮箱收费标准与活动价格、云虚拟主机最新收费标准,以供参考。
|
存储 安全 区块链
WBTC与BTC的主要区别
WBTC与BTC的主要区别
963 6
|
自然语言处理 程序员 Windows
[UE虚幻引擎] DTSpeechVoice 文字转语音播放 插件说明
这个插件用于在虚幻引擎(UE)中通过蓝图将文本转化为语音播放,利用Windows内置的语音引擎,支持Win10和Win11。确保电脑已安装语音系统,可能需要额外下载语言包以支持多语言播放。蓝图操作包括添加Speech Voice Component到Actor,使用Speak节点播放文本,Set Volume调整音量,Set Rate改变播放速度,Pause和Resume控制播放状态,Stop则停止播放且无法恢复。此外,Get Tokens和Set Token用于管理语音类型。更多详情可访问[80后程序员](https://dt.cq.cn/archives/1008?from=aliyun)
504 5