第十届蓝桥杯省赛C++B组 年号字串

问题描述】

   小明用字母 A 对应数字 1,B 对应 2,以此类推,用 Z 对应 26。对于 27 以上的数字,小明用两位或更长位的字符串来对应,例如 AA 对应 27,AB 对 应 28,AZ 对应 52,LQ 对应 329。

   请问 2019 对应的字符串是什么?

【答案提交】

   这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个大写英文字符串,在提交答案时只填写这个字符串,注意全部大写,填写多余的内容将无法得分。

答案:BYQ
代码思路:进制转换,除留余数法,a进制转化为b进制,a处以b所得余数,放在最后一位,依次往前放,所得商继续除,直到得数为0;
代码:

#include "stdafx.h"
#include
#include
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
	char num[27]={0,'A'};
	for(int i=2;i<27;i++)
		num[i]=num[i-1]+1;
	int n=2019;
	string ans="";
	while(n)
	{
		int t=n%26;
		ans=num[t]+ans;//c++中string是可以直接加减的;#include;string "ab"=string a+string b;
		cout<

你可能感兴趣的:(蓝桥杯)