13. Roman to Integer
2016-04-13 18:54
375 查看
Given a roman numeral, convert it to an integer.
Input is guaranteed to be within the range from 1 to 3999.
Input is guaranteed to be within the range from 1 to 3999.
int toNumber(char ch) { switch (ch) { case 'I': return 1; case 'V': return 5; case 'X': return 10; case 'L': return 50; case 'C': return 100; case 'D': return 500; case 'M': return 1000; } return 0; } int romanToInt(char* s) { int len = strlen(s); int ret = 0; for(int i = 0; i < len; i++){ if(i+1 < len && toNumber(s[i+1]) > toNumber(s[i])){ ret += toNumber(s[i+1]) - toNumber(s[i]); i++; } else ret += toNumber(s[i]); } return ret; }
相关文章推荐
- 如何调用android的系统接口
- 使用Selenium+firefox抓取网页指定firefox_profile后的问题
- 简单比较国内外主流浏览器的性能
- IOS开发之所有类型的UIKeyboardType图片展示
- Socket编程--TCP/UDP
- Angularjs学习笔记9_JSON和JSONP
- CentOS6.5配置网络
- 手游性能之渲染分析3
- IPC小记 Socket
- 过滤驱动程序总结
- MySQL乱码问题转载
- 思维导图制作
- Python虚拟环境安装virtualenv
- bzoj 4401: 块的计数 水题
- jsp的EL表达式
- 剑指offer 重建二叉树
- bzoj 3232: 圈地游戏 01分数规划
- mfc结合opencv显示图片
- 斯特林公式 ——Stirling公式(取N阶乘近似值)
- jquery中(function($){...})(jQuery)