【PAT乙級】1048 數字加密
題目連結:1048 數字加密
注意
- 這題思路並不複雜,比較坑的地方是如果原串沒有金鑰長,需要補位至一致位數。
- 輸出時不用管高位如果是0的問題。
- 過程我都寫在程式碼批註裡了。
程式碼
#include <iostream>
using namespace std;
int main(){
char c[13] = {'0','1','2','3','4','5','6','7','8','9','J','Q','K'};
string s1,s2,s3;
cin >> s1 >> s2;
for(int i=1;i<=s2.length()||i<=s1.length();i++){
int a = 0,b = s2[s2.length()-i] - '0';
if(i>s2.length()) b = 0;//s2提前結束,高位補0
if(i>s1.length()) a = b;//s1提前結束,直接輸出s2
else if(i % 2) a = (b + s1[s1.length()-i] - '0') % 13;//奇數位處理
else a = b - s1[s1.length()-i] + '0';//偶數位處理
s3.insert(0,1,c[a<0?a+10:a]);//插入結果到高位
}
cout << s3 << endl;
return 0;
}
相關文章
- PAT-B 1048 數字加密【字串】加密字串
- PAT1048數字加密(java實現)加密Java
- 1048 數字加密(字首和思想)加密
- PAT 乙級
- PAT乙級1023
- 【PAT乙級】1021 個位數統計
- 【PAT乙級】1027 列印沙漏
- 【PAT乙級】1017 A除以B
- 【PAT乙級】1065 單身狗
- 【PAT乙級】1052 賣個萌
- 【PAT乙級】1066 影像過濾
- PAT 乙級 1094 谷歌的招聘 (20分)---【素數 字串】谷歌字串
- PAT 2023 冬 乙 方格填數
- 【PAT乙級、C++】1024 科學計數法 (20分)C++
- PAT乙級——1093(字串匹配)Java實現字串匹配Java
- PAT A1048 二分/two points
- PAT乙級 | 1086 就不告訴你 (15分)
- PAT乙級比賽-互評成績計算
- PAT甲級真題1069 數字黑洞(巧妙解法)
- PAT乙級——1092(陣列排序 自定義sort)Java實現陣列排序Java
- PAT乙級1026程式執行時間(秒數轉換為時間)(值得學習)
- pat乙級自我回顧:一般錯誤出現原因
- 數字加密加密
- [PAT B] 1012 數字分類
- PAT乙級1004 成績排名 (20分)(C語言版)及解析C語言
- PAT1044火星數字(java實現)Java
- PAT1019 數字黑洞(java實現)Java
- PAT乙級1001 || 害死人不償命的(3n+1)猜想(C語言)C語言
- 2022年冬pat乙級考試題目及程式碼解析附部分錯誤原因
- PAT-B 1019 數字黑洞【陣列+模擬】陣列
- PAT乙 1041 考試座位號 (15分)(C C++)C++
- PTA乙級_1024 科學計數法 (20分)_pythonPython
- PAT-B 1012 數字分類【簡單模擬】
- PAT甲級1032 Sharing
- 安全基礎:數字信封、數字簽名、數字證書(加簽驗籤,加密解密)加密解密
- PAT甲級1030 Travel Plan
- 浙大PAT甲級考試
- 非對稱加密和數字證書加密