{"trustable":true,"prependHtml":"\u003cstyle type\u003d\"text/css\"\u003e\n div.illustration {\n float: right;\n padding-left: 20px;\n }\n div.illustration .illustration {\n width: 100%;\n border-radius: 4px;\n }\n pre {\n display: block;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n color: #333;\n word-break: break-all;\n word-wrap: break-word;\n }\n\u003c/style\u003e\n\u003cscript\u003e\n window.katexOptions \u003d {\n delimiters: [\n {left: \u0027\\\\[\u0027, right: \u0027\\\\]\u0027, display: true}\n ]\n };\n\u003c/script\u003e\n","sections":[{"title":"","value":{"format":"HTML","content":"\u003cp\u003eJohn thích các thuật toán mã đơn giản. Anh ấy đã sử dụng thuật toán \"Caesar\" để mã hóa nhật ký của mình cho đến gần đây, khi anh ấy học được một bài học đau lòng về sức mạnh của nó khi bắt được em gái Mary đang lục qua nhật ký mà không gặp bất kỳ vấn đề nào.\u003c/p\u003e\n \u003cp\u003eTìm kiếm nhanh chóng một phương án thay thế, John tìm thấy một giải pháp: thuật toán mã \"Autokey\" nổi tiếng. Anh ấy sử dụng một phiên bản mà chuyển đổi các chữ cái thường \u0027a\u0027-\u0027z\u0027 thành các số từ \u003cspan class\u003d\"tex2jax_process\"\u003e$0$\u003c/span\u003e đến \u003cspan class\u003d\"tex2jax_process\"\u003e$25$\u003c/span\u003e.\u003c/p\u003e\n \u003cp\u003eKhóa mã hóa \u003cspan class\u003d\"tex2jax_process\"\u003e$k$\u003c/span\u003e bắt đầu với một tiền tố bí mật gồm \u003cspan class\u003d\"tex2jax_process\"\u003e$n$\u003c/span\u003e chữ cái. Mỗi chữ cái còn lại của khóa được sao chép từ các chữ cái của văn bản gốc \u003cspan class\u003d\"tex2jax_process\"\u003e$a$\u003c/span\u003e, sao cho \u003cspan class\u003d\"tex2jax_process\"\u003e$k_{n+i} \u003d a_{i}$\u003c/span\u003e cho \u003cspan class\u003d\"tex2jax_process\"\u003e$i \\geq 1$\u003c/span\u003e. Mã hóa của văn bản gốc \u003cspan class\u003d\"tex2jax_process\"\u003e$a$\u003c/span\u003e thành văn bản mã \u003cspan class\u003d\"tex2jax_process\"\u003e$b$\u003c/span\u003e tuân theo công thức \u003cspan class\u003d\"tex2jax_process\"\u003e$b_ i \u003d a_ i + k_ i \\bmod\n 26$\u003c/span\u003e.\u003c/p\u003e\n \u003cp\u003eMary không dễ bị nản chí. Cô ấy đã có thể nhìn thấy \u003cspan class\u003d\"tex2jax_process\"\u003e$n$\u003c/span\u003e chữ cái cuối cùng mà John đã gõ vào nhật ký trên máy tính gia đình trước khi anh ấy nhận ra cô ấy, nhanh chóng mã hóa tài liệu văn bản bằng một cú nhấp chuột và rời đi. Điều này có thể là cơ hội của cô ấy.\u003c/p\u003e\n \u003ch2\u003eNhập vào\u003c/h2\u003e\n \u003cp\u003eĐầu vào bao gồm:\u003c/p\u003e\n \u003cul class\u003d\"itemize\"\u003e\n \u003cli\u003e\n \u003cp\u003eMột dòng với hai số nguyên \u003cspan class\u003d\"tex2jax_process\"\u003e$n$\u003c/span\u003e và \u003cspan class\u003d\"tex2jax_process\"\u003e$m$\u003c/span\u003e (\u003cspan class\u003d\"tex2jax_process\"\u003e$1 \\le n \\le 30$\u003c/span\u003e, \u003cspan class\u003d\"tex2jax_process\"\u003e$n + 1 \\le m \\le 100$\u003c/span\u003e), trong đó \u003cspan class\u003d\"tex2jax_process\"\u003e$n$\u003c/span\u003e là độ dài của khóa cũng như số chữ cái mà Mary nhìn thấy, và \u003cspan class\u003d\"tex2jax_process\"\u003e$m$\u003c/span\u003e là độ dài của văn bản.\u003c/p\u003e\n \u003c/li\u003e\n \u003cli\u003e\n \u003cp\u003eMột dòng với \u003cspan class\u003d\"tex2jax_process\"\u003e$n$\u003c/span\u003e chữ cái thường, \u003cspan class\u003d\"tex2jax_process\"\u003e$n$\u003c/span\u003e chữ cái cuối cùng của văn bản gốc.\u003c/p\u003e\n \u003c/li\u003e\n \u003cli\u003e\n \u003cp\u003eMột dòng với \u003cspan class\u003d\"tex2jax_process\"\u003e$m$\u003c/span\u003e chữ cái thường, toàn bộ văn bản mã.\u003c/p\u003e\n \u003c/li\u003e\n \u003c/ul\u003e\n \u003ch2\u003eĐầu ra\u003c/h2\u003e\n \u003cp\u003eXuất ra văn bản gốc của nhật ký của John.\u003c/p\u003e\n \u003ch2\u003eVí dụ 1\u003c/h2\u003e\u003ctable class\u003d\"vjudge_sample\"\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e5 16\nagain\npirpumsemoystoal\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003emarywasnosyagain\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n \u003ch2\u003eVí dụ 2\u003c/h2\u003e\u003ctable class\u003d\"vjudge_sample\"\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e1 12\nd\nfzvfkdocukfu\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003eshortkeyword\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}