#CSES2418. 网格路径构建

    ID: 452 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: 3 上传者: 标签>构造DFS哈密顿路径网格图CSES深搜分支结构

网格路径构建

题目背景

翻译自 CSES-2418 题。

题目描述

给定一个 n×mn \times m 的网格和两个方格 a=(y1,x1)a = (y_1, x_1)b=(y2,x2)b = (y_2, x_2),从方格 aa 到方格 bb 构建一条路径,并且路径需要访问每个方格恰好一次。

例如,下面是在一个 4×74 \times 7 的网格中,从 a=(1,3)a = (1, 3)b=(3,6)b = (3, 6) 的一条路径:

输入格式

第一行包含一个整数 tt,表示测试的个数。

接下来有 tt 行,每行包含六个整数:nnmmy1y_1x1x_1y2y_2x2x_2,分别表示网格的行数和列数,起点 aa 和终点 bb 的位置。

在所有测试中:

  • 1y1,y2n1 \le y_1, y_2 \le n
  • 1x1,x2m1 \le x_1, x_2 \le m
  • y1y2y_1 \ne y_2x1x2x_1 \ne x_2

输出格式

如果可以构建一条路径,输出 YES;否则,输出 NO

如果存在路径,接着输出路径的描述,由字符 U(上)、D(下)、L(左)和 R(右)组成。路径可以有多个解,输出其中任何一个有效的解即可。

样例

5
1 3 1 1 1 3
1 3 1 2 1 3
2 2 1 1 2 2
2 2 1 1 2 1
4 7 1 3 3 6
YES
RR
NO
NO
YES
RDL
YES
RRRRDDDLLLLLLUUURDDRURDRURD

数据范围

  • 1t1001 \le t \le 100
  • 1n501 \le n \le 50
  • 1m501 \le m \le 50