第六題 解密運算

問題描述

       假設 Alice 要傳送一份機密訊息 P 給 Bob,為了避免機密訊息曝光,Alice 打算使用一種加密換位技術來保護此機密訊息。加密換位的過程是先輸入一個大於 1 的數字 K 當作金鑰及一串機密訊息,金鑰值為列數、機密訊息長度為行數,然後將機密訊息依照順序以鋸齒狀的方式進行排列,排列完成後,從左至右、由上到下讀取,即可得到密文 C。

舉例 1:若輸入 K=3,機密訊息 P="university",則加密運算如下圖:
u       e        t  
   n    v    r    i    y
     i        s      

密文 C="uetnvriyis"

舉例 2:若輸入 K=2,機密訊息 P="university",則加密運算如下圖:

u    i   e    s    t  
   n    v    r    i    y

       Alice 運算得到密文 C 後,再將密文 C 傳送給 Bob,Bob 收到密文 C 後,擬輸入相同金鑰 K 及密文 C,透過解密運算,還原回原來的機密訊息 P。

輸入說明

輸入一個大於 1 的正整數 K(K<100),例如:3,再輸入一個密文 C(C 的字母數<100),例如: uetnvriyis。

輸出說明

輸出答案為機密訊息 P,例如: university。

範例

輸入 輸出
3
sysaeorefvul
saveyourself
2
cmueoptr
computer