題目描述
有一種特殊的加密算法,明文為一段數(shù)字串,經(jīng)過密碼本查找轉(zhuǎn)換,生成另一段密文數(shù)字串。
規(guī)則如下:
- 明文為一段數(shù)字串由 0~9 組成
- 密碼本為數(shù)字 0~9 組成的二維數(shù)組
- 需要按明文串的數(shù)字順序在密碼本里找到同樣的數(shù)字串,密碼本里的數(shù)字串是由相鄰的單元格數(shù)字組成,上下和左右是相鄰的,注意:對角線不相鄰,同一個單元格的數(shù)字不能重復(fù)使用。
- 每一位明文對應(yīng)密文即為密碼本中找到的單元格所在的行和列序號(序號從0開始)組成的兩個數(shù)宇。
如明文第 i 位 Data[i] 對應(yīng)密碼本單元格為 Book[x][y],則明文第 i 位對應(yīng)的密文為X Y,X和Y之間用空格隔開。
如果有多條密文,返回字符序最小的密文。
如果密碼本無法匹配,返回"error"。
請你設(shè)計(jì)這個加密程序。
示例1:
密碼本:文章來源:http://www.zghlxwxcb.cn/news/detail-833053.html
0 0 2文章來源地址http://www.zghlxwxcb.cn/news/detail-833053.html
1 3 4
6 6 4
明文:"3",密文:"1 1"
示例2:
密碼本:
0 0 2
到了這里,關(guān)于華為OD機(jī)試 - 特殊的加密算法(Java & JS & Python & C & C++)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!