Bạn được cho một xâu ~S~, bao gồm các ký tự từ "A" ~\to~ "Z", hoặc từ "0" ~\to~ "9", hoặc các kí tự: "." (ASCII ~46~), "," (ASCII ~44~) và ";" (ASCII ~59~). Một từ được định nghĩa là một dãy ký tự dài nhất trong xâu ~S~ mà không chứa hai kí tự "," và ";". Ví dụ, xâu ~S = ~"~ABC,123;0;2F~" thì chúng ta sẽ tìm được bốn từ: "~ABC~", "~123~", "~0~", "~2F~".
Từ được chia thành ~3~ loại:
- (1) Là một xâu chỉ chứa chữ cái.
- (2) Là một xâu được biểu diễn như một số tự nhiên (Các số có hai chữ số trở lên không được bắt đầu bằng số ~0~).
- (3) Là những xâu còn lại (Không tính xâu rỗng).
Bạn được yêu cầu phân loại các từ có trong xâu thành ba loại, sau đó in ra thành từng dòng, dòng thứ ~i~ là các từ thuộc loại thứ ~i~.
Lưu ý: Các từ trên một dòng được in theo thứ tự xuất hiện từ trái sang phải.
Dữ liệu vào
- Dòng thứ nhất gồm một số nguyên ~N~ ~(1 \leq N \leq 10^6)~.
- Dòng thứ hai gồm một xâu ~S~ chứa ~N~ kí tự như đề bài mô tả.
Kết quả ra
- Gồm ba dòng, dòng thứ ~i~ chứa các từ thuộc loại thứ ~i~, cách nhau một khoảng trắng. Nếu loại thứ ~i~ không tồn tại bất kì từ nào, in ra dấu "-" (ASCII ~45~).
Ràng buộc
- Subtask 1 ~(10 \%)~: ~1 \leq N \leq 1000~, chỉ gồm các từ thuộc loại (~1~).
- Subtask 2 ~(15 \%)~: ~1 \leq N \leq 1000~.
- Subtask 3 ~(15 \%)~: Chỉ gồm các từ thuộc loại (~1~).
- Subtask 4 ~(60 \%)~: Không có ràng buộc gì thêm.
Ví dụ 1
Dữ liệu vào
12
ABC,123;0;2F
Kết quả ra
ABC
123 0
2F
Giải thích
Tìm được bốn từ: "~ABC~", "~123~", "~0~", "~2F~".
- Các từ thuộc loại (~1~): "~ABC~".
- Các từ thuộc loại (~2~): "~123~", "~0~".
- Các từ thuộc loại (~3~): "~2F~".
Lưu ý: Số ~0~ được tính là một số tự nhiên.
Ví dụ 2
Dữ liệu vào
10
01,F7D;1.3
Kết quả ra
-
-
01 F7D 1.3
Giải thích
Tìm được ba từ: "~01~", "~F7D~", "~1.3~".
- Không có từ thuộc loại (~1~).
- Không có từ thuộc loại (~2~).
- Các từ thuộc loại (~3~): "~01~", "~F7D~", "~1.3~".
Lưu ý: Vì từ "~01~" bắt đầu bằng chữ số "~0~" nên không thuộc loại (~2~).
Comments