现在是消消乐时间
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
Special Judge, 64bit IO Format: %lld

题目描述

\,\,\,\,\,\,\,\,\,\,方块消除游戏是一种益智类的游戏,它的玩法是通过射出小球来消除屏幕上的方块,小球在移动过程中会碰撞并消除所遇到的方块,当遇到墙壁时则会反弹。
\,\,\,\,\,\,\,\,\,\,
\,\,\,\,\,\,\,\,\,\,现在,我们有一个简化版本的方块消除游戏,它的具体规则描述如下:
  • 整个游戏在一个 nm 列的矩形中进行。矩形的底部 dm 列为空白单元格,其余位置放置着可被消除的方块,每个方块占据一个单元格,方块的中心点和单元格的中心点重合;
  • 矩形底部空白区域中 d+1 条横线与竖线相交形成的 (d+1)\times (m+1) 个交点为合法的小球发射地点,你可以在这些交点中任选一个作为发射地点,随后,从左上 45^{\circ} 、右上 45^{\circ} 、左下 45^{\circ} 、右下 45^{\circ} 这四个方向中选择一个方向射出小球;
  • 小球在移动过程中会沿着射出的方向运行,当其碰到任意一个方块的中心时,会将其消除;当其碰到墙壁后,会发生反弹。
\,\,\,\,\,\,\,\,\,\,我们进一步的规定这里的反弹所代表的含义:
  • 如果小球射向矩形的四个角,那么游戏直接结束;
  • 否则,如果小球碰到矩形左侧或右侧边缘,那么小球的水平方向(x轴)的速度会变为相反数,垂直方向(y轴)的速度不变,即小球的运动方向会沿着垂直于墙壁的方向反射;
  • 如果小球碰到矩形上方或下方边缘,那么小球的垂直方向(y轴)的速度会变为相反数,水平方向(x轴)的速度不变,即小球的运动方向会沿着水平于墙壁的方向反射。
\,\,\,\,\,\,\,\,\,\,现在, \rm\mathcal Salt 想要知道,是否存在这样一个发射地点,使得小球射出后能够消除全部的方块。

输入描述:

\,\,\,\,\,\,\,\,\,\,每个测试文件仅有一组测试数据。
\,\,\,\,\,\,\,\,\,\,第一行输入三个整数 nm 和 d (1 \le nm \leq 2000, 0 \le d \le n) 表示游戏矩形网格的行数、列数以及空白占据的行数。

输出描述:

\,\,\,\,\,\,\,\,\,\,如果存在这样的发射地点,首先输出一行 \rm YES ,接下来在第二行输出两个整数 x 和 y (0 \le x \le d0\le y \le m) 表示发射地点所在的横线编号与竖线编号,在第三行输出小球的发射方向:
\,\,\,\,\,\,\,\,\,\,如果向左上 45^{\circ} 方向射出小球,输出 \rm {UL} ;
\,\,\,\,\,\,\,\,\,\,如果向右上 45^{\circ} 方向射出小球,输出 \rm {UR} ;
\,\,\,\,\,\,\,\,\,\,如果向左下 45^{\circ} 方向射出小球,输出 \rm{DL} ;
\,\,\,\,\,\,\,\,\,\,如果向右下 45^{\circ} 方向射出小球,输出 \rm{DR} 。
\,\,\,\,\,\,\,\,\,\,如果不存在这样的发射地点,仅需输出一行 \rm {NO} 。你可以以任何大小写形式输出答案。
示例1

输入

复制
6 3 0

输出

复制
NO

说明

\,\,\,\,\,\,\,\,\,\,在第一个样例中,我们一共有 16 种不同的发射情况,如下图所示(其中蓝色箭头代表发射方向)。由于这 16 种情况均无法一次性消除全部的方块,故我们输出 \rm{NO}

示例2

输入

复制
6 4 2

输出

复制
YeS
1 2
uL

说明

\,\,\,\,\,\,\,\,\,\,在第二个样例中,存在多种发射方式使得小球能够一次性消除全部方块,我们在此仅展示其中一种。

备注:

\,\,\,\,\,\,\,\,\,\,如果有多种合法答案,你可以输出任意一种。