#P870. 【TYVJ1624】寄存器

【TYVJ1624】寄存器

【问题描述】 有一种机器,只有两个寄存器X和Y。初始两个寄存器都是1。有两种操作(括号中的是操作名称):

[X]X:=X+Y

[Y]Y:=X+Y

可以看出,每种操作都是将两个寄存器相加存入其中一个。一个程序就是由X和Y组成的字符串,表示依次做这两种操作。现在给一个r表示你需要寻找一个最短的程序使得在程序结束时,X寄存器中存着r,Y寄存器中可以储存任意数。如果有多解,输出字典序最小的答案。

【文件输入】

一个整数r。

【文件输出】

一行字符串,表示最短的程序。

【样例输入1】

10

【样例输出1】

XXYYX

【样例输入2】

20

【样例输出2】

XYYYYXX

【数据范围】

对于20%的数据,r<=100。

对于50%的数据,r<=10000。

对于100%的数据,2<=r<=1000000。