B1048 數字加密

2022-08-09 09:36:15 字數 1018 閱讀 2478

本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算:對奇數字,對應位的數字相加後對 13 取餘——這裡用 j 代表 10、q 代表 11、k 代表 12;對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 10。這裡令個位為第 1 位。

輸入在一行中依次給出 a 和 b,均為不超過 100 位的正整數,其間以空格分隔。

在一行中輸出加密後的結果。

1234567 368782971
3695q8118
• 輸入兩個字串a b,將a b進行reverse,互換後每位數的奇偶互換;

• 在a[i] b[i]都非零,即i < a.length() && i < b.length(),將變換結果加到c上;如果b的長度大於a的長度需要將超出的一部分直接加到字串c上;如果b的長度小於a的長度,若為偶數字,直接加到c上,若為奇數字,取反加10,加到c上。最後輸出字串c

測試5 答案錯誤

還沒找到解決辦法⊙︿⊙

1 #include 2 #include 

3 #include 4

using

namespace

std;

5int

main() ;

8 cin >> a >>b;

9reverse(a.begin(), a.end());

10reverse(b.begin(), b.end());

11int i = 0;12

while (i < a.length() && i 16else

20 i++;21}

22if (b.length() >a.length()) 27}

28else

if(b.length() 35for (int j = c.length()-1; j>=0; j--)

38return0;

39 }

B1048 數字加密

include include includeusing namespace std const int maxn 110 char a maxn b maxn char ans maxn int main scanf s s a,b int lena strlen a int lenb strle...

B1048 數字加密

1048 數字加密 20 分 本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對 13 取餘 這裡用 j 代表 10 q 代表 11 k 代表 12 對偶數字,用 b 的數字減去 a ...

B 1048 數字加密 20 分

本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對 13 取餘 這裡用 j 代表 10 q 代表 11 k 代表 12 對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 ...