Excel Sheet Column Title
2015-12-25 19:08
337 查看
Given a positive integer, return its corresponding column title as appear in an Excel sheet.
For example:
网友说:
Excel序是这样的:A~Z, AA~ZZ, AAA~ZZZ, ……
本质上就是将一个10进制数转换为一个26进制的数
注意:由于下标从1开始而不是从0开始,因此要减一操作。
注意是转换是从1开始计数的,不是从0开始的,所以不是直接地做26进制转换那么简单,需要中间做一些变换。试了几次, 比如 26 - Z, 52->AZ,试出了正确的代码。
论坛里见到这个问题:如何把string的元素逆序?
我直接想到的是利用反向迭代器reverse_iterator:rbegin()和rend():
string str1("1234567890");
string str2(str1.rbegin(), str1.rend());
For example:
1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB 52 -> AZ
网友说:
Excel序是这样的:A~Z, AA~ZZ, AAA~ZZZ, ……
本质上就是将一个10进制数转换为一个26进制的数
注意:由于下标从1开始而不是从0开始,因此要减一操作。
注意是转换是从1开始计数的,不是从0开始的,所以不是直接地做26进制转换那么简单,需要中间做一些变换。试了几次, 比如 26 - Z, 52->AZ,试出了正确的代码。
class Solution { public: string convertToTitle(int n) { int val=n; string res; char begin='A'; for(;val!=0;) { char ch; int temp=(val-1)%26; ch=begin+temp; //这个地方告诉自己字符运转 res=ch+res; //这儿看仔细字符和string的顺序,可如此 val =(val-1)/26; //这儿val减1之后再去除,自己就是输入26之后错误,通过测试用例才发现的!! } return res; } };
论坛里见到这个问题:如何把string的元素逆序?
我直接想到的是利用反向迭代器reverse_iterator:rbegin()和rend():
string str1("1234567890");
string str2(str1.rbegin(), str1.rend());
相关文章推荐
- 课程设计之图书管理系统
- node.js 调用 mongoose 的 aggregate 函数
- 关于此实现不是 Windows 平台 FIPS 验证的加密算法的一部分。error
- 一个人的网站开发
- tomcat跟apache的区别
- entity reference name can not contain character...
- JavaWeb课程设计_宿舍管理系统04
- 【Java并发编程实战】----- AQS(二):获取锁、释放锁
- Android dialog 对话框自定义布局
- 深入理解Message, MessageQueue, Handler和Looper
- 获取不同机型外置SD卡路径
- Android热门网络框架Volley详解
- JS原型继承工作原理
- Android性能优化之Systrace分析UI性能
- 如何在fedora23上安装和运行MySQL server (MySQL 已经被MariaDB取代)
- 汇编语言实现数组划分,同时也说下传感器单片机脚位
- vi文本编辑器命令
- 如何用UltraISO制作大于4G文件的光盘映像可启动U盘
- node.js 调用mongodb的group 函数,并到处到excel 中。
- 内存对齐