[HUSTFC 2023] A+B problem
题目描述
Walk Alone 是一个字符串大师,在他的眼中每个字符串都表示一个 26 26 26 进制的数,具体地说,按照字母表顺序从 A A A 到 Z Z Z 分别对应着十进制下 0 0 0 到 25 25 25,那么 B A BA BA 对应十进制下 26 ( 1 × 26 + 0 ) 26\ (1\times 26+0) 26 (1×26+0), B B BB BB 对应十进制下 27 ( 1 × 26 + 1 ) 27\ (1\times 26+1) 27 (1×26+1),以此类推。
Walk Alone 想考考已经习惯了十进制加法的你,给你两个字符串 s s s 和 t t t,请你计算出他们所表示的 26 26 26 进制数的和,即 s + t s+t s+t,并同样以字符串形式告诉他,例如 A + A = A A+A=A A+A=A, B + C = D B+C=D B+C=D。为了简化问题, s s s 和 t t t 分别只包含一个大写字母,但请注意,答案不一定只包含一个大写字母。
输入格式
一行用空格分隔的两个大写字母,分别表示 s s s 和 t t t。
输出格式
输出一行只包含大写字母的字符串,表示 s + t s+t s+t。输出的答案不包含前导 0 0 0,即类似 A A AA AA、 A B AB AB 的输出都是不合法的。
样例 #1
样例输入 #1
A A
样例输出 #1
A
样例 #2
样例输入 #2
B C
样例输出 #2
D
样例 #3
样例输入 #3
Z B
样例输出 #3
BA
C++实现
#include
#include <bits/stdc++.h>
using namespace std;
string a,b;
int x,y;
int main() {
cin>>a>>b;
x=a[0]-'A';
y=b[0]-'A';
x+=y;
char ans;
if(x<=25){
ans='A'+x;
}else{
ans='A'+x-26;
ans='B'+ans;
}
cout<<"==============================="<<endl;
cout<<ans;
return 0;
}
后续
接下来我会不断用C++来实现信奥比赛中的算法题、GESP C++考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容