Mật thư là một xâu kí tự gồm các chữ cái tiếng Anh in hoa. Để mã hóa mật thư, Ban tổ chức xếp các chữ cái theo vòng tròn:
đứng sau \(A\) là \(B\), đứng sau \(B\) là \(C\), …, đứng sau \(Z\) là \(A\).
Mỗi kí tự \(x\) trong mật thư được mã hóa thành một xâu \(y k\), trong đó:
- \(k\) là một số tự nhiên do Ban tổ chức lựa chọn,
- \(y\) là kí tự đứng sau \(x\) đúng \(k\) vị trí trong vòng tròn nói trên.
Xâu mã hóa của mật thư thu được bằng cách thay thế lần lượt từng kí tự bởi xâu mã hóa tương ứng.
Ví dụ: A7K2P2 là xâu mã hóa của xâu TIN vì:
- \(A7\) là mã hóa của \(T\) (đứng sau \(T\) \(7\) vị trí là \(A\)),
- \(K2\) là mã hóa của \(I\) (đứng sau \(I\) \(2\) vị trí là \(K\)),
- \(P2\) là mã hóa của \(N\) (đứng sau \(N\) \(2\) vị trí là \(P\)).
Yêu cầu: Cho xâu \(S\) là xâu mã hóa của mật thư, hãy tìm mật thư tương ứng.
Input
Đọc từ tệp CAU2.INP một xâu \(S\) (chỉ gồm các chữ cái in hoa và chữ số), độ dài không quá \(300000\).
Output
Ghi ra tệp CAU2.OUT một dòng là xâu mật thư tìm được.
Input
%
U1K2Q3L4P1F3
Output
%
TINHOC
Scoring
- Subtask 1 (80%): \(0 \le k \le 9\).
- Subtask 2 (20%): \(0 \le k \le 10000\).
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.