Mật mã Ceasar 2

Xem dạng PDF

Gửi bài giải

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

Dạng bài
Ngôn ngữ cho phép
Python, Scratch

Trước công nguyên, nhà quân sự người La Mã Julius Ceasar đã nghĩ ra phương pháp mã hóa một bản tin như sau: thay thế mỗi chữ cái trong bản tin bằng chữ cái đứng sau nó ~k~ vị trí trong bảng chữ cái còn các chữ số, khoảng trắng hoặc kí tự đặc biệt thì giữ nguyên.

Giả sử với ~k = 3~, ta có bảng chuyển đổi như sau:

Chữ ban đầu:    a b c d e f g h i j k l m n o p q r s t u v w x y z
Chữ thay thế:   d e f g h i j k l m n o p q r s t u v w x y z a b c
Chữ ban đầu:    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Chữ thay thế:   D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Khi đó bản tin: Attack to a#123 sau khi mã hóa sẽ có bản mã Dwwdfn wr d#123 và sau đó Ceasar gửi bản mã cho cấp dưới của mình. Nhận được bản mã và khóa ~k~, cấp dưới của ông sẽ giải mã bản tin để đọc nội dung của nó.

Input
  • Dòng đầu tiên ghi khóa ~k~ ~(0 < k < 10^6)~.
  • Dòng thứ 2 ghi một xâu có không quá ~1000~ ký tự là bản tin sau khi đã được mã hóa.
Output
  • Một dòng chứa bản tin trước khi được mã hóa
Sample Input
7
Wyvnyhttpun@6789
Sample Output
Programming@6789

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.