POJ 1979 DFS
2016-05-20 10:41
113 查看
题目链接:http://poj.org/problem?id=1979
#include<cstring> #include<iostream> using namespace std; int n=0,h=0,sum=0; char aa[21][21]; void DFS(int p,int q) { if(aa[p][q]=='.'&&p>=0&&p<h&&q>=0&&q<n) { sum++; aa[p][q]='#'; } else return ; DFS(p-1,q); DFS(p+1,q); DFS(p,q-1); DFS(p,q+1); } int main() { while(cin>>n>>h) { if(n==0||h==0)break; int p=0,q=0; sum=0; memset(aa,0,sizeof(aa)); for(int i=0;i<h;i++) for(int j=0;j<n;j++) { cin>>aa[i][j]; } for(int i=0;i<h;i++) for(int j=0;j<n;j++) { if(aa[i][j]=='@') { p=i;q=j; aa[i][j]='.'; } } DFS(p,q); cout<<sum<<endl; } return sum; }
相关文章推荐
- LINUX学习资源
- Nginx一个server主机上80、433http、https共存
- 软考二进宫-选择题易错点
- OpenCV矩阵运算
- Android Studio中module配置好的bulid.gradle和混淆proguard-rules.pro
- STL源码笔记(18)—平衡二叉树AVL(C++封装+模板)
- 使用Liferay IDE 3.0创建支持Service Builder的portlet module
- iOS前端与后台交互技术实现及技术细节
- Java 线程 详解
- linux下查看ip
- LeetCode 37. Sudoku Solver(数读游戏)
- LeetCode 38. Count and Say(点数)
- LeetCode 39. Combination Sum(组合求和)
- c++作业6
- 【linux】centos6.5搭建svn
- 【Java】边框总结
- SVN简介和工作原理
- QT4的源代码在QT5的环境下编译
- IBM MQ Connect Successful Demo
- c++学习笔记(5):C++ typename的起源与用法