Submit solution
Points:
1.14 (partial)
Time limit:
1.0s
Memory limit:
512M
Input:
stdin
Output:
stdout
Problem source:
Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Cho hai biến ~X~ và ~Y~, ban đầu có giá trị ~1~. Mỗi bước ta có thể thực hiện một trong hai phép gán ~X:=X+Y~ (ký hiệu ~X~) hoặc ~Y:=X+Y~ (ký hiệu ~Y~). Cho trước một số ~r~, tìm cách thực hiện ít phép gán nhất sao cho biến ~X~ mang giá trị ~r~ (biến ~Y~ có thể mang giá trị bất kỳ).
Nếu có nhiều cách thực hiện, trả về cách mang thứ tự từ điển nhỏ nhất.
Input
- Mỗi test bắt đầu bằng thẻ "[CASE]", các test cách nhau bởi một dòng trắng. Thẻ "[END]" báo hiệu kết thúc file input.
- Mỗi test chứa một số nguyên ~r~ ~(r \le 10^{6})~ duy nhất
Output
- Mỗi test chứa một dòng duy nhất là dãy bao gồm các ký tự ~X~ hoặc ~Y~ mô tả dãy phép gán.
Sample Input
[CASE]
10
[CASE]
3
[CASE]
20
[CASE]
34
[END]
Sample Output
XXYYX
XX
XYYYYXX
XYXYXYX
Comments