题目链接:http://poj.org/problem?id=1164

1、深搜,每个点都访问一次,没有标记的话,就做深搜,同时标记。

#include <iostream>
#include <algorithm>
#include <cstring>using namespace std;int r,c;
int rooms[60][60],color[60][60];
int MAX=0,NUM=0;
int area;void dfs(int i,int j)
{if(color[i][j]!=0)return ;else{color[i][j]=1;area++;if((rooms[i][j]&1)==0) dfs(i,j-1);///向西if((rooms[i][j]&2)==0) dfs(i-1,j);///向北if((rooms[i][j]&4)==0) dfs(i,j+1);///向东if((rooms[i][j]&8)==0) dfs(i+1,j);///向南
    }
}int main()
{cin>>r>>c;memset(color,0,sizeof(color));for(int i=1; i<=r; i++)for(int j=1; j<=c; j++)cin>>rooms[i][j];for(int i=1; i<=r; i++){for(int j=1; j<=c; j++){if(color[i][j]==0){NUM++;area=0;dfs(i,j);MAX=max(MAX,area);}}}cout<<NUM<<endl<<MAX;return 0;
}

转载于:https://www.cnblogs.com/TreeDream/p/5236801.html

深度优先搜索(dfs),城堡问题相关推荐

  1. 一文搞定深度优先搜索(DFS)与广度优先搜索(BFS)【含完整源码】

    写在前面:博主是一位普普通通的19届双非软工在读生,平时最大的爱好就是听听歌,逛逛B站.博主很喜欢的一句话花开堪折直须折,莫待无花空折枝:博主的理解是头一次为人,就应该做自己想做的事,做自己不后悔的事 ...

  2. C++实现深度优先搜索DFS(附完整源码)

    C++实现深度优先搜索DFS C++实现深度优先搜索DFS完整源码(定义,实现,main函数测试) C++实现深度优先搜索DFS完整源码(定义,实现,main函数测试) #include <al ...

  3. C++用stack实现深度优先搜索DFS(附完整源码)

    C++用stack实现深度优先搜索DFS的实现 C++用stack实现深度优先搜索DFS的完整源码(定义,实现,main函数测试) C++用stack实现深度优先搜索DFS的完整源码(定义,实现,ma ...

  4. 深度优先搜索(DFS) 总结(算法+剪枝+优化总结)

    深度优先搜索(DFS) 总结(算法+剪枝+优化总结) 本文中会引用部分实例.文献资料来自不同的作者之手,由于资料整理比较困难,转载地址不在文中列举.如有侵权请联系我更换或删除!对于提供题解思路的各位大 ...

  5. 【算法很美】深入递归 (下)深度优先搜索DFS问题

    深搜.回溯.剪枝 深度优先搜索DFS 2.1 无死角搜索I 数独游戏 部分和 水洼数目 2.2 回溯和剪枝 n皇后问题 素数环 困难的串 小结 一些使用 2.1 无死角搜索I 数独游戏 你一定听说过& ...

  6. 【算法入门】深度优先搜索(DFS)

    深度优先搜索(DFS) [算法入门] 郭志伟@SYSU:raphealguo(at)qq.com 2012/05/12 1.前言 深度优先搜索(缩写DFS)有点类似广度优先搜索,也是对一个连通图进行遍 ...

  7. 深度优先搜索之城堡问题

    问题描述 下图是一个城堡的地形图,请你编写一个程序,计算城堡一共有多少个房间,最大的房间有多大.城堡被分割成mxn(m<=50,n<=50)个方块,每个方块可以有4面墙. #代表墙,|-代 ...

  8. matlab bfs函数,matlab练习程序(广度优先搜索BFS、深度优先搜索DFS)

    如此经典的算法竟一直没有单独的实现过,真是遗憾啊. 广度优先搜索在过去实现的二值图像连通区域标记和prim最小生成树算法时已经无意识的用到了,深度优先搜索倒是没用过. 这次单独的将两个算法实现出来,因 ...

  9. 【数据结构与算法】2.深度优先搜索DFS、广度优先搜索BFS

    原文链接:https://blog.csdn.net/qq_41681241/article/details/81432634 总结 一般来说,广搜常用于找单一的最短路线,或者是规模小的路径搜索,它的 ...

  10. 树的广度优先搜索(BFS),深度优先搜索(DFS)

    BFS:Breadth First Search,广度优先搜索 DFS:Depth First Search,深度优先搜索 如图,A节点的下一级元素为B节点和C节点,B节点的下一级元素为D节点和E节点 ...

最新文章

  1. ZooKeeper配额
  2. C++多态的概念及前提条件
  3. OpenCV黑白图像增强——灰度级切片
  4. 数据结构Java02【栈、队列、单链表(增删节点)、循环链表、双向循环链表、递归(斐波那契、汉诺塔)】
  5. 3详细参数_大疆精灵3值得入手吗?最详细的实测体验,各种参数应有尽有!
  6. 贼好理解,这个项目教你如何用百行代码搞定各类NLP模型
  7. 添加删除windows的系统服务
  8. 某公司ASP.NET应聘上机试题
  9. 从零基础入门Tensorflow2.0 ----八、43. 自定义流程分布式
  10. wireshark ip地址抓包
  11. 威廉第三的MAC系列教程(一) ——使用ACPI Patcher制作DSDT补丁
  12. el-input只能输入数值和小数点,并且不显示上下箭头
  13. 4k电视色彩表现测试软件,选高端4K电视 4K测试图帮你轻松分辨
  14. mysql授权replication_MySQL创建用户并授权REPLICATION CLIENT和REPLICATION SLAVE
  15. ppt保存为高分辨率图片(ppt2016)
  16. Wex5修改Tomcat端口
  17. c# 容联云_Rest Server Demo_开发文档_容联云通讯
  18. SpringBoot注解整理历史笔记
  19. 解决斜杠符号被转义的问题
  20. JS逆向|使用pyexecjs库替换加密字符串

热门文章

  1. 分区表与分区索引(一):范围分区表的操作
  2. 如何脱颖而出?成为优秀的人
  3. Linux内核之于红黑树and AVL树
  4. XenDesktop中无法删除虚拟机
  5. 在Simulink中创建库
  6. 2010上半年网络规划设计师下午试卷Ⅱ与论文写作要点
  7. [SOA征文]SOA如何起步?
  8. 主DNS服务-正向解析
  9. [20180408]那些函数索引适合字段的查询.txt
  10. Springmvc+Easyui 搜索,新增,删除,修改