很明显啊!调用STL简单多了,省了30行代码

#include<iostream>
#include<queue>
#include<string.h>
using namespace std;
char ch[22][22];
int r,c;
int XX[4][2]={{-1,0},{0,-1},{0,1},{1,0}};
struct node{int x,y;};
int bfs(int bx,int by,int Sum)
{
    int k;
    int xx,yy;
    node t,tt;
    queue<node>qu;
    t.x=bx,t.y=by;
    qu.push(t);
    while(!qu.empty())
    {
        t=qu.front();
        qu.pop();
        for(k=0;k<4;k++)
        {
           xx=t.x+XX[k][1],yy=t.y+XX[k][0];
           if(xx>=0&&xx<c&&yy>=0&&yy<r&&ch[xx][yy]!='#')
           {
               Sum++;
              ch[xx][yy]='#';
               tt.x=xx,tt.y=yy;
               qu.push(tt);
           }
        }
    }

return Sum;

}
int main()
{
    int i,j,bx,by,Sum;
    while(cin>>c>>r&&c&&r)//c列  r行
    {
      memset(ch,0,sizeof(ch));
      for(i=0;i<r;i++)
       for(j=0;j<c;j++)
       {
           cin>>ch[j][i];
           if(ch[j][i]=='@')
           {
               bx=j,by=i;
               ch[j][i]='#';
           }

}

Sum=1;

cout<< bfs(bx,by,Sum)<<endl;
    }
    return 0;
}

转载于:https://www.cnblogs.com/zhangyabin---acm/archive/2012/03/12/2392509.html

hdu1312---------------DFS模板(调用STL)相关推荐

  1. 蓝桥杯算法竞赛系列第0章——蓝桥必考点及标准模板库STL(上)(万字博文,建议抱走)

    欢迎来到:遇见蓝桥遇见你,不负代码不负卿! 目录 ​ 一.蓝桥必考点剖析 二.什么是STL 三.vector的常见用法详解 1.vector的定义 2.vector容器内元素的访问 (1).通过下标访 ...

  2. C++ 标准模板库(STL)

    C++ 标准模板库(STL) C++ STL (Standard Template Library标准模板库) 是通用类模板和算法的集合,它提供给程序员一些标准的数据结构的实现如 queues(队列) ...

  3. c语言stl模板,c/c++开发分享C++ 标准模板库 STL 顺序容器详解

    c++ 标准模板库 stl 顺序容器 容器 顺序性 重复性 支持迭代器 vector 动态数组 无序 可重复 随机访问迭代器 deque 双向队列 无序 可重复 随机访问迭代器 list 双向链表 无 ...

  4. 第十章 标准模板库STL

    第十章 标准模板库STL 因为是在复习时重写的,无法在PTA上验证,编程题格式可能有误. 判断题 1.可以通过下标随机访问向量vector中的元素.(T) 2.当向量对象的内存用完之后,就会产生越界错 ...

  5. 标准模板库STL(Standard Template Library)

    标准模板库STL(Standard Template Library)指南 /*刘振飞liuzf@pku.org.cn 1999-10-20*/ / *版权所有 (C) 1999-2004 刘振飞li ...

  6. 笔记②:牛客校招冲刺集训营---C++工程师(面向对象(友元、运算符重载、继承、多态) -- 内存管理 -- 名称空间、模板(类模板/函数模板) -- STL)

    0618 C++工程师 第5章 高频考点与真题精讲 5.1 指针 & 5.2 函数 5.3 面向对象(和5.4.5.5共三次直播课) 5.3.1 - 5.3.11 5.3.12-14 友元 友 ...

  7. C++ 学习笔记·八——提高编程(模板与 STL )

    C++提高编程 本阶段主要针对 C++ 泛型编程 和 STL 技术做详细讲解,探讨 C++ 更深层的使用 1 模板 1.1 模板的概念 模板就是建立通用的模具,大大提高复用性 例如生活中的模板 一寸照 ...

  8. C++学习笔记—模板与STL

    C++提高编程 本阶段主要针对C++泛型编程和STL技术做详细讲解,探讨C++更深层的使用 1 模板 1.1 模板的概念 模板就是建立通用的模具,大大提高复用性 例如生活中的模板 一寸照片模板 PPT ...

  9. 泛型模板和STL语法入门

    泛型模板和STL语法入门 STL简介 STL是Standard Template Library的简称,中文名标准模板库,惠普实验室开发的一系列软件的统称.它是由Alexander Stepanov. ...

  10. C++ ——模板 标准模板库STL

    C++ 知识基础 流操作符 类 & 基础 初始化和重载 类 & 高级 继承和多态 模板 & 标准模板库STL 目录 C++ 一.模板 1.函数模板 2.类模板 二.标准模板库S ...

最新文章

  1. 人类偏好的“可塑性”,从博弈说起
  2. Java基类Object中有哪些方法
  3. Android开发笔记——常见BUG类型之内存泄露与线程安全
  4. VB.NET实现DirectSound9 (6) 声音特效
  5. android 分区layout以及虚拟内存布局-小结
  6. VMWare12 安装 OSX 10.10
  7. [导入]SQL中的临时表和表变量
  8. 知乎上关于固态硬盘的一些知识
  9. 哪里可以培训计算机运维,临武县运维工程师培训班_郴州科泰计算机学校
  10. 关于angularjs input上传图片前获取图片的Size 浅析
  11. mysql密码输入多次都不对_mysql 密码不对
  12. js去掉a链接点击后产生的虚线(兼容火狐)
  13. swing禁用最大化、去掉java图标、设置窗口为中央显示
  14. 华硕linux网卡驱动,华硕官网主板型号”P5BV-C”的Linux的网卡驱动加载
  15. Maven的学习与2022IDEA创建Maven的web项目的教程(这个比上一期更“啰嗦哦~,前面不想删了,整体再来一遍”)
  16. acm 比赛 专业术语
  17. 电脑找不到硬盘的解决方案
  18. 14个种类,600款笔刷!如何做一套属于自己的精美笔刷?
  19. 怎么看懂UML中的类图?
  20. 关于三子棋(井字棋)小游戏

热门文章

  1. 相似图片搜索的原理(二)(转)
  2. C#两路list数组归并去重
  3. winsock编程宝典
  4. 思必驰重磅发布AI芯片,同时推出产业破局战略
  5. js navigator platform
  6. .NET Core 2.1 Preview 2带来网络方面的改进
  7. spring mvc路径匹配原则
  8. 农民伯伯 谈 接口 [interface]
  9. 雅虎扫描用户电子邮件,欧盟不干了:侵犯隐私!
  10. JAVA爬虫Nutch、WebCollector的正则约束