引爆炸弹

引爆炸弹在一个n×m的方格地图上,某些方格上放置着炸弹。手动引爆一个炸弹以后,炸弹会把炸弹所在的行和列上的所有炸弹引爆,被引爆的炸弹又能引爆其他炸弹,这样连锁下去。输入格式第一行输两个整数n

大家好,又见面了,我是你们的朋友全栈君。

在一个n×m 的方格地图上,某些方格上放置着炸弹。手动引爆一个炸弹以后,炸弹会把炸弹所在的行和列上的所有炸弹引爆,被引爆的炸弹又能引爆其他炸弹,这样连锁下去。

输入格式

第一行输两个整数 n,m用空格隔开。
接下来 n 行,每行输入一个长度为 m 的,表示地图信息。0表示没有炸弹,1表示炸弹。

样例输入 

5 5
00010
00010
01001
10001
01000

样例输出 :2

#include <stdio.h>
#include <iostream>
#include <math.h>
#include <string.h>
using namespace std;
const double PI=acos(-1.0);
int n,m;
int ans;
int a[105][105];
bool vx[105],vy[105];
void dfs(int x,int y){
    a[x][y]=0;
    if(!vx[x]){
     vx[x]=1;
for(int i=0;i<m;i++){ if(a[x][i]==1){ dfs(x,i); } } } if(!vy[y]){
     vx[y]=1;
for(int i=0;i<n;i++){ if(a[i][y]==1){ dfs(i,y); } } } } int main(){ cin>>n>>m; for(int i=0;i<n;i++){ for(int j=0;j<m;j++){ cin>>a[i][j]; } } for(int i=0;i<n;i++){ for(int j=0;j<m;j++){ if(a[i][j]==1){ ans++; dfs(i,j); } } } cout<<ans; return 0; }

 


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/155191.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • touchesBegan: withEvent: 不执行/完美收起键盘

    touchesBegan: withEvent: 不执行/完美收起键盘eg:写一个category类目 UIScrollView+Event-(void)touchesBegan:(NSSetUITouch*>*)toucheswithEvent:(UIEvent*)event{  [supertouchesBegan:toucheswithEvent:event];  [[[selfnext

  • 阿里云轻量应用型服务器防火墙端口开放了还是无法访问问题@林[通俗易懂]

    阿里云轻量应用型服务器防火墙端口开放了还是无法访问问题@林[通俗易懂]阿里云轻量应用型服务器防火墙端口开放了还是无法访问问题登录阿里云找到防火墙远程连接服务器,开启防火墙对应端口这里我用的是FinalShell,当然这个远程连接的软件可以不同,只要能远程连接上服务器就行;(1)查看防火墙状态(dead状态,防火墙未开启;active状态,即防火墙开启)systemctlstatusfirewalld(2)防火墙未开启,开启防火墙(防火墙开启后记得再查看防火墙状态)systemctlstartfirewalld(3)查看开放端口列表f

  • 常见计算机病毒种类及特征介绍与分析

    常见计算机病毒种类及特征介绍与分析什么是计算机病毒通俗来讲,计算机病毒是一个程序,一段可执行代码。它可以很快地通过网络、U盘等蔓延,又常常难以根除。它能影响计算机使用,并且具有破坏性,复制性和传染性。病毒又分为很多种类,下面,我就来说说最常见的一些病毒吧!系统病毒系统病毒的前缀为:Win32、PE、Win95、W32、W95等。这些病毒的一般共有的特性是可以感染windows操作系统的*.exe和*.dll

  • 老电脑玩游戏又卡又慢,怎么办?

    老电脑玩游戏又卡又慢,怎么办?电脑玩游戏反应慢,这里收集了网上网友们提供的方法。如果您在电脑玩游戏时也遇到反应慢的问题,可以尝试用这些办法解决。网友方案一如果电脑玩游戏反应慢,可以通过将电脑的独显打开、更改电池模式或是调整画面分辨率等方法来解决,具体的操作方法可以参考下面的内容。1、将电脑的独显打开,打开控制面板,选择左侧的管理3D设置,在全局设置界面中将自动选择改为你的NVIDIA显卡。然后选择程序设置界面将你…

  • 几个汇编教程地址[通俗易懂]

    几个汇编教程地址[通俗易懂]汇编语言程序设计指南http://c.biancheng.net/asm/AssemblyLanguage教程https://www.w3cschool.cn/assembly/

  • 语义分割技术综述_语义分割模型

    语义分割技术综述_语义分割模型综述论文翻译:AReviewonDeepLearningTechniquesAppliedtoSemanticSegmentation近期主要在学习语义分割相关方法,计划将arXiv上的这篇综述好好翻译下,目前已完成了一部分,但仅仅是尊重原文的直译,后续将继续完成剩余的部分,并对文中提及的多个方法给出自己的理解。论文地址:https://arxiv.org/abs/170…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号