2019年蓝桥杯省赛C/C++B组 试题B:年号字串

试题B:年号字串

【问题描述】
小明用字母A对应数字1,B对应2,以此类推,用Z对应26。对于27以上的数字,小明用两位或更长位的字符串来对应,例如AA对应27,AB对应28,AZ对应52,LQ对应329。
请问2019对应的字符串是什么?
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个大写英文字符串,在提交答案时只填写这个字符串,注意全部大写,填写多余的内容将无法得分。

题解

这道题目实际就是一个将十进制转换为26进制

#include <iostream>
using namespace std;

char str[27] = {
    
    0,'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};

int main(){
    
    
	int n;
	string ans;
	cin >> n;
	
	while(n){
    
    
		ans += str[n % 26];
		n /= 26;
	}
	
	int len = ans.length();
	for(int i=len-1; i>=0; i--)
		cout << ans[i];
	
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_44524918/article/details/109118252