题目链接:点击打开链接
知识点笔记:
AC代码:
#include <iostream>
using namespace std;
int main() {
char numbers[] = {'0','1','2','3','4','5','6','7','8','9','J','Q','K'};
char A[110],B[110];
scanf("%s %s",A,B);
int lenthOfA = strlen(A);
int lenthOfB = strlen(B);
int d = lenthOfA>lenthOfB?(lenthOfA-lenthOfB):(lenthOfB-lenthOfA);
int max =lenthOfA>lenthOfB?lenthOfA:lenthOfB;
if(lenthOfA<=lenthOfB){
for(int i=(lenthOfA-1);i>=0;i--)
A[i+d]=A[i];
for(int j=0;j<d;j++)
A[j]='0';
}else{
for(int i=(lenthOfB-1);i>=0;i--)
B[i+d]=B[i];
for(int j=0;j<d;j++)
B[j]='0';
}
int m;
for(int k=0;k<max;k++){
if((max-k+1)%2){
m =(B[k]-'0')-(A[k]-'0');
if(m<0)
m+=10;
printf("%c",numbers[m]);
}else{
m = ((A[k]-'0')+(B[k]-'0'))%13;
printf("%c",numbers[m]);
}
}
return 0;
}
/*
* else if(lenthOfB>lenthOfA){
for(int i=(lenthOfB-1);i>=0;i--)
B[i+d]=B[i];
for(int j=0;j<d;j++)
B[j]='0';
}
*/