leetcode字符串处理经典
2016-06-13 21:57
183 查看
Given a roman numeral, convert it to an integer.
Input is guaranteed to be within the range from 1 to 3999.
int romanToInt(char* s) {
int length = strlen(s);
int i;
int a[26];
a['M' - 'A'] = 1000;
a['D' - 'A'] = 500;
a['C' - 'A'] = 100;
a['L' - 'A'] = 50;
a['X' - 'A'] = 10;
a['V' - 'A'] = 5;
a['I' - 'A'] = 1;
int p , q = 0;;
int num = 0;
for( i = length -1 ; i >= 0 ; i--)
{
p = a[s[i] - 'A'];
num += ( p >= q )?p:-p;
q = p;
}
return num;
}
Given a roman numeral, convert it to an integer.
Input is guaranteed to be within the range from 1 to 3999.
int romanToInt(char* s) {
int length = strlen(s);
int i;
int a[26];
a['M' - 'A'] = 1000;
a['D' - 'A'] = 500;
a['C' - 'A'] = 100;
a['L' - 'A'] = 50;
a['X' - 'A'] = 10;
a['V' - 'A'] = 5;
a['I' - 'A'] = 1;
int p , q = 0;;
int num = 0;
for( i = length -1 ; i >= 0 ; i--)
{
p = a[s[i] - 'A'];
num += ( p >= q )?p:-p;
q = p;
}
return num;
}
相关文章推荐
- ubuntu 简单日常命令
- Leetcode 87. Scramble String
- Ajax与JSON的一些总结
- linux网络编程模型
- 天干地支象法
- android中的消息机制--浅谈Handler的原理及使用
- maven学习(一)
- Android入门-SayHello实现页面跳转
- UML系列图--用例图
- redis系列--set操作
- 常见的Linux内核中内存分配
- 飛飛(六十七)文件的应用 数数
- android之文件权限问题
- 我的JavaEE学习路线图
- Azkaban Getting Started
- STL之list容器详解
- 输入年份显示十二生肖
- HTML+CSS3-》第2阶段:HTML5基础和HTML语义化 下
- 剑指offer27--查找数组中最小的k个数
- android常用view布局