5498: H-Smzzl with Greedy Snake

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:1 解决:1

题目描述

Smzzl is going to make an AI for Greedy Snake. The game goes on xOy plane and there is no obstacles in the plane.

In this game, the snake takes 1 unit of time to move forward for one unit of length. It also takes 1 unit of time for the snake to rotate for 90 degrees. (The snake must rotate for the whole unit of time.) There is a food in the map initially. After the snake eat each food, the next food appears.

Smzzl certainly want the snake to eat the food as fast as possible, so he need to minimize the time when the snake eat each food. Please output a valid operate sequence.

输入

The input consists of multiple test cases. 

The first line contains an integer T (1≤T≤200) -- the number of test cases.

For each test case:

In the first line, there are three integers x,y,d (|x|,|y|≤1040≤d≤3). The snake starts on (x,y)d shows the direction of the head of the snake. (0 for y+, 1 for x+, 2 for y-, 3 for x-)

In the second line, there is an integer n (1≤n≤105), which is the number of foods.

In the next n lines, each contains two integers x,y (|x|,|y|≤104), which means the next food appears at (x,y).

It is guaranteed that any line that connects two foods that appear adjacently does not parallel to the x-axis or the y-axis.

输出

For each test case, output the shortest operation sequence. Output 'f' for going forward, 'c' for rotating clockwise, 'u' for rotating counterclockwise. Each operation lasts for one unit of time.

It can be proved that there is only one operation sequence which meets the requirements.

It is guranteed that the total length of output does not exceed 2×106.

样例输入 复制

2
0 0 0
2
-1 -1
1 1
0 0 2
5
-1 2
2 4
3 -5
4 -2
5 0

样例输出 复制

ufufuffuff
cfcffffcffffcfffffffffufufffffcf