Robot đi trên lưới

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python

Một robot xuất phát tại ô ~(0, 0)~ của lưới vô hạn và thực hiện một dãy lệnh, mỗi lệnh là một ký tự: U (lên, ~y~ tăng ~1~), D (xuống, ~y~ giảm ~1~), L (sang trái, ~x~ giảm ~1~), R (sang phải, ~x~ tăng ~1~). Hãy cho biết vị trí cuối cùng của robot và số ô khác nhau mà robot đã đi qua (tính cả ô xuất phát).

Dữ liệu vào

Một dòng chứa xâu gồm các ký tự U, D, L, R, độ dài từ ~1~ đến ~10^5~.

Kết quả

Dòng đầu tiên in hai số ~x, y~ là vị trí cuối cùng. Dòng thứ hai in số ô khác nhau đã đi qua.

Ví dụ

Ví dụ 1

Input:

RRUULD

Output:

1 1
7

Ví dụ 2

Input:

UDUDUD

Output:

0 0
2

Giải thích

Với RRUULD robot đi qua (0,0) (1,0) (2,0) (2,1) (2,2) (1,2) (1,1), kết thúc tại (1, 1) sau khi đi qua ~7~ ô khác nhau. Dùng set<pair<int, int>> để nhớ các ô đã thăm.


Đang tải...