01迷宫
题号:NC219509
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

给出一个01迷宫,'0'代表空地,'1'代表墙 。

输出起点到终点的最短路的长度及路径。

规定:为了保证答案唯一,总会按照下(D),上(U),左(L),右(R)的优先级行走。
假设当前点为(x, y),规定方向如下:
D:(x, y) -> (x, y+1)
U:(x, y) ->(x, y-1)
L:(x, y) ->(x-1, y)
R:(x, y) ->(x+1, y)


输入描述:

第一行两个整数n,m,代表迷宫的长和宽。

接下来n行,每行是一个长度为m的01串

接下来一行四个整数sx,sy,ex,ey。分别代表起点坐标和终点的坐标。

输出描述:

若存在最短路则按照题目描述输出最短路径,否则打印-1. 

示例1

输入

复制
2 2
00
00
1 1 2 2

输出

复制
2
DR

说明

备注:

1 ≤ n,m ≤ 500