迪西想設計一個加密通話的規則程式,這樣以後在秘密通話時就可以直接複製加密後內容。給定一段不含空白、標點與無效字元的字串 S,請將其以每 4 個字元為一組進行固定置換加密。
若一組原始順序為 1 2 3 4
,則輸出為 3 1 4 2
。
若最後不足 4 個字元,則尾段保持原樣。
本題僅需進行「加密」,不需解密。
第一行輸入一個整數 n
,代表字串長度。
(4 ≤ n ≤ 1,000,000
)
第二行輸入一行字串 S
,長度為 n
。
內容可能為中文、英文或數字,但不包含空白與標點符號。
輸出一行字串:為 S
依規則加密後的結果。
12 觀隅反三君命無二憑城借一
反觀三隅無君二命借憑一城
7 ABCDXYZ
CBADXYZ
以每 4 個字元為一組做固定置換:1 2 3 4 → 3 1 4 2
(索引 2,0,3,1
)。
尾段不足 4 個字元時保持原樣。
輸入為兩行:第 1 行長度 n
(可作檢查用),第 2 行為字串 S
。
直接用步長 4
走訪即可,時間複雜度 O(|S|)
、額外空間 O(1)
(或一個輸出緩衝)。
ID | User | Problem | Subject | Hit | Post Date |
沒有發現任何「解題報告」 |