Kicker mật mã
Một phương pháp phổ biến nhưng không an toàn để mã hóa văn bản là hoán vị các chữ cái trong bảng chữ cái. Nói cách khác, mỗi chữ cái của bảng chữ cái luôn được thay thế trong văn bản bằng một số chữ cái khác. Để đảm bảo mã hóa có thể đảo ngược, không có hai chữ cái nào được thay thế bằng cùng một chữ cái. Nhiệm vụ của bạn là giải mã một số dòng văn bản được mã hóa, giả sử rằng mỗi dòng sử dụng một bộ thay thế khác nhau và tất cả các từ trong văn bản được giải mã là từ một từ điển các từ đã biết.
Đầu vào
Đầu vào bao gồm các từ viết thường, theo thứ tự bảng chữ cái. Những từ này bao gồm từ điển của các từ có thể xuất hiện trong văn bản được giải mã. Theo sau từ điển là một số dòng đầu vào. Mỗi dòng được mã hóa như mô tả ở trên.
Không có hơn 1.000 từ trong từ điển. Không có từ nào vượt quá 16 chữ cái. Các dòng được mã hóa chỉ chứa các chữ cái và dấu cách viết thường và không vượt quá 80 ký tự.
Đầu ra
Giải mã từng dòng và in nó ra đầu ra tiêu chuẩn. Nếu có nhiều giải pháp, bất kỳ một sẽ làm. Nếu không có giải pháp, thay thế mỗi chữ cái trong bảng chữ cái bằng dấu hoa thị.
Đầu vào mẫu
and dick jane puff spot yertle
bjvg xsb hxsn xsb qymm xsb rqat xsb pnetfn
xxxx yyy zzzz www yyyy aaa bbbb ccc dddddd
Đầu ra mẫu
dick and jane and puff and spot and yertle
**** *** **** *** **** *** **** *** ******
Đây là giải pháp. Xin lưu ý rằng tôi không phải là một con ngựa chạy trong cuộc đua cho các byte ngắn nhất / Lập trình viên cạnh tranh. Tôi chỉ thích câu đố!
( Nguồn )