leetcode Roman Integer
2024-09-16 06:02:20
class Solution {
public:
int romanToInt(string s) {
if (s.length() < 1)
return 0;
map<char,int> m;
m['I'] = 1;
m['V'] = 5;
m['X'] = 10;
m['L'] = 50;
m['C'] = 100;
m['D'] = 500;
m['M'] = 1000;
int i = s.length() - 1;
int sum = m[s[i--]];
while (i >= 0) {
if (m[s[i + 1]] > m[s[i]])
sum -= m[s[i]];
else
sum += m[s[i]];
--i;
}
return sum;
}
};
class Solution {
public:
string intToRoman(int num) {
// IMPORTANT: Please reset any member data you declared, as
// the same Solution instance will be reused for each test case.
string symbol[]={"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};
int value[]={1000,900,500,400,100,90,50,40,10,9,5,4,1};
string res = "";
int i = 0;
while (num > 0) {
if (num >= value[i]) {
res += symbol[i];
num -= value[i];
}
else
++i;
}
return res;
}
};
最新文章
- web前端基础知识-(七)Django进阶
- log4net部分配置说明
- 转!!负载均衡器技术Nginx和F5的优缺点对比
- Nginx 切片模块、断点续传
- 如何为自己的项目在pycharm中设置debug?
- 2.Knockout.Js(监控属性Observables)
- Paxos算法
- 第一章 Qt入门
- Win10或Win8下ObjectARX2015 Wizard向导创建项目失败解决方法
- antd按需加载,配置babel-plugin-import插件,编译后报错.bezierEasingMixin()解决方案
- qtp type和set方法的区别
- SqlHelper分享
- 735. Asteroid Collision彗星相撞后的消失数组
- Luogu P2473 [SCOI2008]奖励关
- Redis位图实现用户签到功能
- ubuntu14上安装nltk
- Starting with neural network in matlab[zz]
- C语言实现Linux下删除非空目录
- 使用pd从数据库逆向生成pdm文件
- php处理XML数据