Scytale

密碼棒(Scytale, SKY-TAH-LEE, 希臘文 σκυτάλη - 棒子之意)是一種相當早期的訊息加密系統。 假設原始訊息如下。 HELP ME I AM UNDER ATTACK 首先,發訊者會將一細長紙條纏繞在一個木棒上,並且在木棒上以正常方法寫上訊息。 HELPMEIAMUNDERATTACK | | | | | | | H | E | L | P | M | | E | I | A | M | U | | N | D | E | R | A | | T | T | A | C | K | | | | | | | 然後把紙條解開之後,訊息就不可辨識了! --------------------------------------------- | H E N T E I D T L A E A P M R C M U A K | --------------------------------------------- 使者會把紙條傳遞到收件人手上。收件人會有一個事先打造好,和發訊者格式一樣的木棒。把紙條纏繞上去,便可以讀出原本的訊息。 HELPMEIAMUNDERATTACK 它因為簡便而可靠,成為古戰場上常見的傳訊工具。但是,也由於它的簡單,破解攔截到的訊息並不是非常困難。 這裡假設加密解密所用的密碼棒都是均勻的多角柱體,且一個側面剛好可以容納一行字母。於是,如果密碼棒是N角柱,上面繞一圈就會剛好有N個字符。 輸入說明 多筆測資。 每筆測試資料一開始會是一個整數N(2 <= N <= 256),代表解碼所用的密碼棒一圈有N個字符。 接下來會有一個字串S,是需要解碼的訊息。S的長度不超過1024個字元。 輸出說明 輸出把字條正確地繞到密碼棒上之後,讀出的訊息。 sample input 4 HENTEIDTLAEAPMRCMUAK sample output HELPMEIAMUNDERATTACK 提示/注意事項 -訊號長度不一定會是纏繞圈數的整數倍(不足處會補上空白字元如圖,解碼後輸出在對應位置。) | | | | | | T | O | B | E | | O | R | N | O | | T | T | O | B | | E |[ ]|[ ]|[ ]| | | | | | 密文: [TOTEORT BNO EOB ] 訊息: [TOBEORNOTTOBE ]