校园迷宫(rqnoj195)
来源:互联网 发布:网络写手新手指南 编辑:程序博客网 时间:2024/05/17 03:26
校园迷宫
题目描述
总算期中考了,鄙人被教育局分配到了SY学校,当然是陪着很多人的。不知转了多少次车,总算到了。可惜的是,SY学校整个像个迷宫一样,就在门口贴了张学校地图。鄙人就开始研究地图了,但是学校错综复杂,等找到目的地,早就开考了。为此,鄙人取出随身携带的微型电脑(不知道从哪来的),向网上发去了求助书。注:只能往4个方向走:上、下、左、右。
输入格式
第1行,二个数,N,M。
接下来是一个N*M的矩阵,表示这个学校。(有N行,M列)。矩阵由2个数字组成。0:路;1:墙。路能走,墙不能走(这是基本常识。不过还是提醒一下,不然哪个牛又要飞檐走壁了)。
再是2行,第1行2个数X1,Y1表示校门口的坐标(即校门口在矩阵的第X1行,第Y1列)。第2行2个数X2,Y2表示鄙人的考场的坐标(即校门口在矩阵的第X2行,第Y2列)。
数据范围:0<M,N<=2000。0〈X1,X2〈=N,0〈Y1,Y2〈=M。
输出格式
一个数,表示最少要走的步数。如果走不到,则输出 No Answer!
样例输入
5 5
1 1 1 1 1
1 1 1 0 0
1 0 0 0 1
0 0 1 0 0
1 1 1 0 1
4 1
5 4
样例输出
6
===========
宽搜基本题目
===========
const dx:array[1..4]of longint=(1,-1,0,0); dy:array[1..4]of longint=(0,0,-1,1);var n,m:longint; map:array[0..2001,0..2001]of integer; h:array[0..4000000,1..3]of longint; x1,y1,y2,x2:longint;procedure init;begin assign(input,'t195.in'); assign(output,'t195.out'); reset(input); rewrite(output);end;procedure terminate;begin close(input); close(output); halt;end;procedure bfs;var l,r:longint; i:longint; x_,y_:longint;begin l:=0; r:=1; h[1,1]:=x1; h[1,2]:=y1; h[1,3]:=0; repeat inc(l); // l:=l mod 22500; for i:=1 to 4 do begin x_:=h[l,1]+dx[i]; y_:=h[l,2]+dy[i]; if map[x_,y_]<>1 then begin if (x_=x2) and (y_=y2) then begin writeln(h[l,3]+1); terminate; end; map[x_,y_]:=1; inc(r); // r:=r mod 22500; h[r,1]:=x_; h[r,2]:=y_; h[r,3]:=h[l,3]+1; end; end; until l>=r;end;procedure main;var i,j:longint;begin readln(n,m); for i:=0 to n+1 do for j:=0 to m+1 do map[i,j]:=1; for i:=1 to n do for j:=1 to m do read(map[i,j]); readln(x1,y1); readln(x2,y2); bfs; writeln('No Answer!');end;begin init; main; terminate;end.
- 校园迷宫(rqnoj195)
- 【BFS】【Rqnoj195】
- 【图论】【RQNOJ】校园迷宫
- 【宽搜】校园迷宫
- 校园迷宫-rqnoj-195
- RQNOJ 校园迷宫-宽度优先搜索
- 校园
- 迷宫
- 迷宫
- 迷宫
- 迷宫
- 迷宫?
- 迷宫
- 迷宫
- 迷宫
- 迷宫
- 迷宫
- 迷宫
- C++ 重要的 引文
- iPad2使用心得和应用推荐(不定期更新)
- 线程1例子
- 校园网络信息资源管理应用平台
- ubuntu解决打开windows记事本.txt文件乱码的方法
- 校园迷宫(rqnoj195)
- 求最大子序列和
- POJ 1861 Network (MST kruskal 加权合并 (瓶颈生成树))
- 美国西点军校的育人之道
- ARM-Linux驱动--Watch Dog Timer(看门狗)驱动分析
- DirectX骨骼动画演示,和渐进网格和增进网格的演示
- 系统架构之一(RPG游戏常用架构)
- 对比.net使用Java的匿名类对工厂方法模式提供更优雅的实现
- 如何显示维基百科图片