题目描述
小明用字母 A对应数字 1,B对应 2,以此类推,用 Z对应 26。对于 27以上的数字,小明用两位或更长位的字符串来对应,例如 AA对应27,AB对
应28,AZ对应52,LQ对应329。
请问2019对应的字符串是什么?
解:
一位字母最大表示为Z:26
两位字母最大表示为ZZ:26*26=676
三位字母最大表示为ZZZ:26*26*26=17576
参考计算机组成原理的二进制转换十进制:
xyz=x*26^2+y*26+z
#include<iostream> using namespace std; #include<stdio.h> int main(){ int x,y,z;//X 为第一位 Y为第二位 Z为第三位 for(x=1;x<=26;x++) { for(y=1;y<=26;y++) { for(z=1;z<=26;z++) { int tmp; tmp = x*26*26+y*26+z; if(tmp==2019){ cout<<x<<" "<<y<<" "<<z; break; } } } } return 0; }
结果为:2 25 17 对应字母为B Y Q