当前位置:网站首页>-红与黑-
-红与黑-
2022-08-09 23:46:00 【-JMY-】
题目描述
有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向上下左右四个方向的相邻的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。
输入
第一行是两个整数W和H,分别表示x方向和y方向瓷砖的数量。W和H都不超过20。在接下来的H行中,每行包括W个字符。每个字符表示一块瓷砖的颜色,规则如下
1)‘.’:黑色的瓷砖;
2)‘#’:白色的瓷砖;
3)‘@’:黑色的瓷砖,并且你站在这块瓷砖上。该字符在每个数据集合中唯一出现一次。
输出
输出一行,显示你从初始位置出发能到达的瓷砖数(记数时包括初始位置的瓷砖)。
样例输入
6 9 ....#. .....# ...... ...... ...... ...... ...... #@...# .#..#.
样例输出
45
参考代码:
#include<bits/stdc++.h>
using namespace std;
int w,h,l;
char s[105][105];
void around(int i,int j){
if(s[i][j]=='#'||i<1||i>w||j<1||j>h)
return;
s[i][j]='#';
l++;
around(i,j-1);
around(i-1,j);
around(i,j+1);
around(i+1,j);
return;
}
int main(){
cin>>h>>w;
for(int i=1;i<=w;i++)
for(int j=1;j<=h;j++)
cin>>s[i][j];
for(int i=1;i<=w;i++)
for(int j=1;j<=h;j++)
if(s[i][j]=='@'){
around(i,j);
cout<<l;
return 0;
}
return 0;
}
边栏推荐
猜你喜欢

如何抑制告警风暴?

【问题解决】训练和验证准确率很高,但测试准确率很低

Digital wallets, red sea ecological rapid introduction of small programs can help capture device entry wisdom

Alibaba Cloud SMS Service Activation

Leetcode81. 搜索旋转排序数组 II

Description of AirFlow

RebatMq消息中间件(一) 各个中间件介绍

GoLang 使用 goroutine 停止的几种办法

Win11怎么关闭系统保护功能?系统保护还原功能怎么关闭?

字节技术面都过了,薪资都谈好了20K*13结果还是被刷了,问HR原因是。。。
随机推荐
数据库的备份与恢复「建议收藏」
WPF DataGrid 使用数据模板
生成树和交换的总结
FITC标记生物素(FITC-生物素|CAS:134759-22-1)有哪些知识了?
共创 Ray 中文社区,Ray Forward Meetup 2022 直播邀你参加!
Koa中间件next实现
知行合一的时候
【obs】obsqsv11 硬编 及与metartc codec对比
Enhanced Deep Residual Networks for Single Image Super-Resolution
线程的同步与互斥
Biotin-Cy2 Conjugate,生物素-Cy2 偶联物_Cy2 生物素偶联物
聚焦热点 | ISC 2022软件供应链安全治理与运营论坛圆满落幕
pytest:如何在测试中编写和报告断言
第十二,十三章 mysql数据类型,视图的课后练习
Why don't suggest you run in Docker Mysql?
PEG 衍生物Biotin-PEG1-OH(cas:95611-10-2,2-生物素氨基乙醇)优势说明
Service Discovery @EnableDiscoveryClient
温度响应性纳米水凝胶光子品体/纤维素修饰荧光水凝胶/载脂质体水凝胶的制备方法
3.11-程序基本的控制语句 3.12-表达式 3.13-数据类型 3.14-常量/变量 3.15-标识符
【数据存储】signed,unsigned到底怎么区分?如何计算?