Nén chuỗ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

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

Cho chuỗi ~A~ gồm ~N~ chữ cái. Chuỗi có thể được nén theo quy tắc: nếu một đoạn gồm ~D~ lần lặp liên tiếp của chuỗi ~S~ (~D \ge 2~) thì có thể viết thành D(S), trong đó ~S~ cũng có thể đã được nén. Các phần nén có thể ghép nối tiếp nhau.

Ví dụ: aaaa có thể nén thành 4(a).

Hãy tìm cách nén có độ dài ngắn nhất. Nếu có nhiều cách, chọn chuỗi có thứ tự từ điển nhỏ nhất (theo mã ASCII, nên ( < ) < chữ số < chữ cái).

Input

  • Dòng đầu chứa số nguyên ~N~.
  • Dòng thứ hai chứa chuỗi ~A~ độ dài ~N~.

Output

Một dòng duy nhất là chuỗi nén tìm được.

Giới hạn

  • ~1 \le N \le 200~

Vào/ra bằng file

  • Dữ liệu vào: đọc từ file WSTRING.INP.
  • Kết quả: ghi ra file WSTRING.OUT.

Đang tải...