杭电 HOJ 1312 Red and Black 解题报告
生活随笔
收集整理的这篇文章主要介绍了
杭电 HOJ 1312 Red and Black 解题报告
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
搜索,bfs。依旧用队列做。边界处懒得处理,全部初始化为-1。当然,0也可以。AC代码如下:
#include<iostream> #include<deque> using namespace std;struct Point {int x,y; } x,y;int main() {char str[22];int i,j,n,m,s[22][22],t;deque<Point> q;while(cin>>m>>n && (m||n)){q.clear();memset(s,-1,sizeof(s));for(t=i=1;i<=n;i++)for(cin>>str+1,j=1;j<=m;j++)if(str[j]=='.')s[i][j]=0;else if(str[j]=='@'){x.x=i;x.y=j;q.push_back(x);}while(!q.empty()){x=q.front();for(i=-2;i<=2;i++)if(s[y.x=x.x+i/2][y.y=x.y+i%2]!=-1){q.push_back(y);s[y.x][y.y]=-1;t++;}q.pop_front();}cout<<t<<endl;} }
转载于:https://www.cnblogs.com/IT-BOY/archive/2013/02/22/2922857.html
总结
以上是生活随笔为你收集整理的杭电 HOJ 1312 Red and Black 解题报告的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: qq女生个性网名个性网
- 下一篇: 调试webservice遇到“测试窗体只