历届试题 Excel地址

Posted 原来你还在这里e

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了历届试题 Excel地址相关的知识,希望对你有一定的参考价值。

Excel单元格的地址表示很有趣,它使用字母来表示列号。
  比如,
  A表示第1列,
  B表示第2列,
  Z表示第26列,
  AA表示第27列,
  AB表示第28列,
  BA表示第53列,
  ....


  当然Excel的最大列号是有限度的,所以转换起来不难。
  如果我们想把这种表示法一般化,可以把很大的数字转换为很长的字母序列呢?


  本题目即是要求对输入的数字, 输出其对应的Excel地址表示方式。
样例输入
26
样例输出
Z
样例输入
2054
样例输出
BZZ
数据规模和约定
  我们约定,输入的整数范围[1,2147483647]


  峰值内存消耗(含虚拟机) < 256M
  CPU消耗 < 1000ms

 1 #include <iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     long long a;
 6     int yushu;
 7     int b[100];
 8     cin>>a;
 9     int i=0;
10     while(a)
11     {
12         yushu=a%26;
13         if(yushu==0)yushu=26;
14         a=(a-yushu)/26;
15         b[i++]=yushu;
16     }
17     for(int j=i-1;j>=0;j--)
18     {
19         printf("%c",b[j]+A-1);
20     }
21     return 0;
22 }

这个问题是利用进制的转化,不同点在于 ,每次的求解必须要减去26 

其实以前的也应该减去

但是因为以前的时候不会出现比26这个情况

所以省略了那一步

 

以上是关于历届试题 Excel地址的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript笔试题(js高级代码片段)

C语言必会面试题(3耶稣有13个门徒,当中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个開始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,...)(代码片段

前端试题-小试牛刀

86/88汇编代码的执行调试

根据图片的url地址下载图片到本地保存代码片段

2020年冬季前端笔试题总结