本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算:對奇數字,對應位的數字相加後對 13 取餘——這裡用 j 代表 10、q 代表 11、k 代表 12;對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 10。這裡令個位為第 1 位。
輸入格式:
輸入在一行中依次給出 a 和 b,均為不超過 100 位的正整數,其間以空格分隔。
輸出格式:
在一行中輸出加密後的結果。
輸入樣例1:
1234567 368782971
輸出樣例1:
3695q8118
總結:
題目的意思是:字串長度較少的需要補0 比如a:123456 b:123
則在作數字加減的時候,b需要補零 a:123456 b:000123
所以分三種情況:
1 a的長度比b的長度大
餘下的字元為a的字元,如果為偶數字,用 b 的數字減去 a 的數字,則要用 0減去a的數字 如果小於零 則+10
if
(a.size()
> b.
size()
)else
else
if(yushu ==11)
else
if(yushu ==12)
}}elseif(
(max_size - i)%2
==0&& max_size - i <= min_size)
char c = min +
'0';
s.push
(c);
}else
if(max_size - i > min_size)
char c=min+
'0';
s.push
(c);}}
}while
(!s.
empty()
)}
2 b的長度比a的長度大
餘下的字元為b的字元,直接進棧即可
else
if(a.
size()
< b.
size()
)else
else
if(yushu ==11)
else
if(yushu ==12)
}}elseif(
(max_size - i)%2
==0&& max_size - i <= min_size)
char c = min +
'0';
s.push
(c);
}else
if(max_size - i > min_size)
}while
(!s.
empty()
)}
3 a的長度與b的長度相等
else
else
else
if(yushu ==11)
else
if(yushu ==12)
}}elseif(
(max_size - i)%2
==0)char c = min +
'0';
s.push
(c);}}
while
(!s.
empty()
)}
ac**:
#include
#include
#include
#include
#include
#include
using
namespace std;
intmain()
else
else
if(yushu ==11)
else
if(yushu ==12)
}}elseif(
(max_size - i)%2
==0&& max_size - i <= min_size)
char c = min +
'0';
s.push
(c);
}else
if(max_size - i > min_size)
char c=min+
'0';
s.push
(c);}}
}while
(!s.
empty()
)}else
if(a.
size()
< b.
size()
)else
else
if(yushu ==11)
else
if(yushu ==12)
}}elseif(
(max_size - i)%2
==0&& max_size - i <= min_size)
char c = min +
'0';
s.push
(c);
}else
if(max_size - i > min_size)
}while
(!s.
empty()
)}else
else
else
if(yushu ==11)
else
if(yushu ==12)
}}elseif(
(max_size - i)%2
==0)char c = min +
'0';
s.push
(c);}}
while
(!s.
empty()
)}system
("pause");
return0;
}
1048 數字加密
本題要求實現一種數字加密方法。首先固定乙個加密用正整數a,對任一正整數b,將其每1位數字與a的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對13取餘 這裡用j代表10 q代表11 k代表12 對偶數字,用b的數字減去a的數字,若結果為負數,則再加10。這裡令個位為第1位。輸入格式 輸入...
1048 數字加密
本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對 13 取餘 這裡用 j 代表 10 q 代表 11 k 代表 12 對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 ...
1048 數字加密
本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對 13 取餘 這裡用 j 代表 10 q 代表 11 k 代表 12 對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 ...