Description

经过跟Farmer John长达数年的谈判,奶牛们终于如愿以偿地得到了想要的旱冰鞋。农场上大部分的区域都很平整,适合在上面滑动,但有一些小块的土地上有很多的岩石,凭奶牛们的旱冰技术,是没有办法通过的。 农场可以看成一个被划分成R(1<=R<=113)行C(1<=C<=77)列的矩阵。快要开饭了,贝茜发现自己在坐标为(1,1)的格子里,并且她想赶到坐标为(R,C)的牛棚去享用她的晚饭。贝茜知道,以她所在的格子为起点,每次向上、下、左、右滑动(但不能沿对角线滑动),一定能找到一条通往牛棚的、不经过任何有大量岩石的格子的路。请你为她指出任意一条通往牛棚的路径。

Input

* 第1行: 两个用空格隔开的整数,R和C * 第2..R+1行: 每行包含C个字符(不含空格),字符只可能是'.'或'*'。是'.' 的话,表示贝茜能从这个格子里通过,是'*'的话,则这个格子 是不能通过的多岩石地带

Output

* 第1..?行: 每行包含2个用空格隔开的整数,表示贝茜回牛棚路径所通过的格 子的坐标。输出的第一行显然应该是1 1,最后一行是R C。输出中 的其余行,依次给出路径中格子的坐标,相邻的两个坐标所表示的 格子必须相邻。

Sample Input

5 8
..*...**
*.*.*.**
*...*...
*.*.*.*.
....*.*.

Sample Output

1 1
1 2
2 2
3 2
3 3
3 4
2 4
1 4
1 5
1 6
2 6
3 6
3 7
3 8
4 8
5 8
题解:
  宽搜没的说……注意初始的(1,1)也算。WA一发被这个坑了
 
 
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
const int MAXN = 114;
const int mx[] = { 1, -1, 0, 0 };
const int my[] = { 0, 0, 1, -1 };
struct xx
{int x, y;
};
xx a[MAXN];
char g[MAXN][MAXN];
bool use[MAXN][MAXN];
int n, m;
int cnt;
bool check(int x, int y)
{if (use[x][y] == false) return false;if (x > n || x<1 || y>m || y < 1) return false;return true;
}
inline void add(int x, int y)
{if (g[x][y] == '.') use[x][y] = true;else use[x][y] = false;
}
void dfs(int x, int y)
{int i;if (x == n&&y == m){for (i = 1; i <= cnt; i++){printf("%d %d\n", a[i].x, a[i].y); }exit(0);}for (i = 0; i <= 3; i++){int tx = x + mx[i];int ty = y + my[i];if (check(tx, ty)){//cout << tx << ' ' << ty << endl;a[++cnt].x = tx, a[cnt].y = ty;use[tx][ty] = false;dfs(tx, ty);cnt--;use[tx][ty] = true;}}
}
int main(int argc, char *argv[])
{int i, j, x, y;scanf("%d%d", &n, &m);for (i = 1; i <= n; i++){scanf("%s", g[i] + 1);for (j = 1; j <= m; j++)add(i, j);}puts("1 1");dfs(1, 1);return 0;
}

转载于:https://www.cnblogs.com/BeyondW/p/5959060.html

【BZOJ】1667: [Usaco2006 Oct]Cows on Skates滑旱冰的奶牛相关推荐

  1. bzoj 1667: [Usaco2006 Oct]Cows on Skates滑旱冰的奶牛(BFS)

    1667: [Usaco2006 Oct]Cows on Skates滑旱冰的奶牛 Time Limit: 1 Sec  Memory Limit: 64 MBSec  Special Judge S ...

  2. BFS【bzoj1667】: [Usaco2006 Oct]Cows on Skates滑旱冰的奶牛

    1667: [Usaco2006 Oct]Cows on Skates滑旱冰的奶牛 Description 经过跟Farmer John长达数年的谈判,奶牛们终于如愿以偿地得到了想要的旱冰鞋.农场上大 ...

  3. bzoj 1669: [Usaco2006 Oct]Hungry Cows饥饿的奶牛

    1669: [Usaco2006 Oct]Hungry Cows饥饿的奶牛 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 990  Solved: 64 ...

  4. bzoj 1668: [Usaco2006 Oct]Cow Pie Treasures 馅饼里的财富(DP)

    1668: [Usaco2006 Oct]Cow Pie Treasures 馅饼里的财富 Time Limit: 3 Sec  Memory Limit: 64 MB Submit: 786  So ...

  5. bzoj 1670: [Usaco2006 Oct]Building the Moat护城河的挖掘(凸包)

    1670: [Usaco2006 Oct]Building the Moat护城河的挖掘 Time Limit: 3 Sec  Memory Limit: 64 MB Submit: 624  Sol ...

  6. bzoj:1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏

    Description 奶牛们又在玩一种无聊的数字游戏.输得很郁闷的贝茜想请你写个程序来帮她在开局时预测结果.在游戏的开始,每头牛都会得到一个数N(1<=N<=1,000,000).此时奶 ...

  7. bzoj 1670 [Usaco2006 Oct]Building the Moat护城河的挖掘——凸包

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1670 用叉积判断.注意两端的平行于 y 轴的. #include<cstdio> ...

  8. 牛客假日团队赛5J 护城河 bzoj 1670: [Usaco2006 Oct]Building the Moat护城河的挖掘 (凸包的周长)...

    链接:https://ac.nowcoder.com/acm/contest/984/J 来源:牛客网 护城河 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6 ...

  9. bzoj1669[Usaco2006 Oct]Hungry Cows饥饿的奶牛*

    bzoj1669[Usaco2006 Oct]Hungry Cows饥饿的奶牛 题意: 求最长单调递增子序列,序列大小≤5000 题解: 蒟蒻弱写了一个O(n^2)的. 代码: 1 #include ...

最新文章

  1. 为博客园博文添加目录的两种方法
  2. 计算机课四年级说课稿,小学信息技术说课稿
  3. 《Adobe Illustrator CS4中文版经典教程》—第0课0.11节将外观属性存储为图形样式...
  4. linux方法参数,Linux的sysctl 命令 参数
  5. [OpenShift 4 - DevSecOps Workshop (16) - 使用 VSCode 编辑运行 Tekton Pipeline 资源
  6. NET的JIRA活动时间线REST API
  7. Oracle执行计划稳固
  8. .Net操作Excel后彻底释放资源
  9. 得到app文稿导出_得到APP使用报告
  10. sybase 设置默认值_修改Sybase数据库的默认字符集为CP936
  11. android 性能测试iozone篇
  12. 计算机按键截图,怎么截图快捷键-如何给windows软件设定快捷键(截图工具、计算器、记事本等)...
  13. Adobe illustrator 常用菜单命令和快捷键
  14. html天气预报静态页面,天气预报_HTML静态页面_带读秒时钟
  15. XML转Json 设置指定节点为数组
  16. 【人生参悟】纸上得来终觉浅,绝知此事要躬行
  17. c语言未定义标识符fife,C语言编程处理数据
  18. 【挑战学习一百天冲刺实习面试】第二十一天:全面理解BIO、NIO、AIO
  19. static不应在文件范围内定义的成员函数上使用
  20. 【postman】postman中文传参出错

热门文章

  1. python.freelycode.com-优化Pandas代码执行速度入门指南
  2. python个人项目-个人博客二|创建项目
  3. python和java哪个-Java和Python现在都很热门,哪个更有前途?
  4. 不想学python-为什么自学python总是坚持不下去,这篇文章给你解答!
  5. python代码翻译-用python实现百度翻译的示例代码
  6. python对文件的读操作方法有哪些-python--文件的读写操作
  7. python自学网站推荐-杭州python自学网站
  8. python3安装-Python3的安装
  9. python有没有中文版-python有中文版吗
  10. php和python交互-Python如何实现简单的用户交互程序(示例)