蓝桥杯 Excel地址

Excel地址

题目描述

Excel 单元格的地址表示很有趣,它使用字母来表示列号。

比如,

A 表示第 1 列,

B 表示第 2 列,

Z 表示第 26 列,

AA 表示第 27 列,

AB 表示第 28 列,

BA 表示第 53 列,

⋯⋯

当然 Excel 的最大列号是有限度的,所以转换起来不难。

如果我们想把这种表示法一般化,可以把很大的数字转换为很长的字母序列呢?

本题目即是要求对输入的数字, 输出其对应的 Excel 地址表示方式。

输入描述

输入一个整数 nn,其范围 [1,2147483647]。

输出描述

输出 nn 对应的 Excel 地址表示方式。

输入输出样例

示例

输入

复制代码
26

输出

复制代码
Z

26进制,区别在于没有0,但是有26;十进制有0,没有10

所以26时不进位

cpp 复制代码
#include <iostream>
#include <vector>
using namespace std;

int main(){
	int num;
	cin>>num;
	vector<char> res;
	while(num > 0){
		int yushu = num % 26;
		num /= 26;
		if(yushu == 0){
			num -= 1;
			yushu += 26;
		}
		res.push_back(char(yushu + 'A' - 1));
	}
	for(vector<char>::reverse_iterator it = res.rbegin(); it !=res.rend(); ++it){
		cout<<*it;
	}
	return 0;
}
相关推荐
wfbcg9 小时前
每日算法练习:LeetCode 209. 长度最小的子数组 ✅
算法·leetcode·职场和发展
yoyobravery10 小时前
蓝桥杯第15届单片机满分
单片机·职场和发展·蓝桥杯
June bug10 小时前
全链路测试
功能测试·面试·职场和发展
倦王11 小时前
力扣日刷47
算法·leetcode·职场和发展
The_era_achievs_hero11 小时前
产品360度展示(蓝桥杯)
蓝桥杯
2501_9307077812 小时前
使用C#代码在 Excel 中添加或设置批注格式
excel
abant212 小时前
leetcode 239 单调队列 需要一些记忆
算法·leetcode·职场和发展
2301_8090494214 小时前
HAL库速成--嵌入式赛道--蓝桥杯速成
职场和发展·蓝桥杯
打瞌睡的朱尤14 小时前
4.1蓝桥杯训练
职场和发展·蓝桥杯
Little At Air14 小时前
LeetCode 30. 串联所有单词的子串 | 困难 C++实现
算法·leetcode·职场和发展