a482: 8.仿射密碼的解密函數
標籤 :
通過比率 : 1人/1人 ( 100% ) [非即時]
評分方式:
Tolerant

最近更新 : 2023-10-26 15:21

內容

仿射密碼(affine ciphers)可用作英文訊息的加解密,一個典型對英文訊息加密的仿射函數具有以下形式:f(p) = (ap + b) mod 26

其中 p 是要加密的字母代碼(A 的代碼為 0、B 的代碼為 1、…、Z 的代碼為 25),a、b 是兩個整數,a 必須跟 26 互質。

例如一個加密函數 f(p) = (7p + 3) mod 26,對 K做加密,K 的代碼為 10,f(10) = (7∙10 + 3) mod 26 =21, 加密後的 K 代碼為 21,在密文中將以 V 顯示。

仿射函數的解密函數具有以下形式:f-1(c) = (ā(c− b)) mod 26,其中 c 是密文的字母代碼,ā 是 a 在 mod 26 的反元數,亦即 āa mod 26 = 1。

以上面的加密函數為例,其解密函數為 f-1(c) = (15(c− 3)) mod 26,因為(15×7) mod 26 = 1。

此題的任務是找出解密函數並對密文解密。

 

 
輸入說明

三個以空白鍵相隔的整數,第一個整數代表加密函數中的 a,第二個整數代表加密函數中的 b,第三個整數代表已加密過後的密文代碼。

 

 
輸出說明

兩個以空白鍵相隔的整數,第一個整數代表解密函數中的 ā,請注意 1≤ ā ≤25,第二個整數代表解密後的字母代碼。

範例輸入 #1
7 3 21
範例輸出 #1
15 10
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (20%): 1.0s , <1K
公開 測資點#1 (20%): 1.0s , <1K
公開 測資點#2 (20%): 1.0s , <1K
公開 測資點#3 (20%): 1.0s , <1K
公開 測資點#4 (20%): 1.0s , <1K
提示 :
標籤:
出處:
111學年度高級中學資訊學科能力競賽中投區複賽 [管理者: ]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」