Leetcode: Roman to integer
来源:互联网 发布:怎样安装t3软件 编辑:程序博客网 时间:2024/06/05 19:07
题目:将罗马数字转换成整数,输入范围:[1,3999]
解题思路:罗马数字与阿拉伯数字对应关系:
1~9: {“I”, “II”, “III”, “IV”, “V”, “VI”, “VII”, “VIII”, “IX”};
10~90: {“X”, “XX”, “XXX”, “XL”, “L”, “LX”, “LXX”, “LXXX”, “XC”};
100~900: {“C”, “CC”, “CCC”, “CD”, “D”, “DC”, “DCC”, “DCCC”, “CM”};
1000~3000: {“M”, “MM”, “MMM”}.
即:I(1)、V(5)、X(10)、L(50)、C(100)、D(500)和M(1000)
当数字组合时,左边的数字小于右边的数字,减去左边的数字;左边的数字大于右边的数字,加上左边的数字,例如XCIX=99:
X
代码:
class Solution(object): def romanToInt(self,s): Roman={'M':1000, 'D':500, 'C':100, 'L':50, 'X':10, 'V':5, 'I':1} ans=0 for i in range(0,len(s)-1): curr=Roman[s[i]] next=Roman[s[i+1]] if curr>next: ans +=curr else: ans -=curr ans +=Roman[s[-1]] return ans
0 0
- LeetCode Roman to Integer && Integer to Roman
- 【leetcode】Roman to Integer | Integer to Roman
- Leetcode - "Roman to Integer" & "Integer to Roman"
- LeetCode:Roman to Integer,Integer to Roman
- LeetCode Integer to Roman & Roman to Integer
- leetcode - roman to integer & integer to roman
- LeetCode:Roman to Integer
- LeetCode: Integer to Roman
- LeetCode: Roman to Integer
- LeetCode Integer to Roman
- LeetCode: Integer to Roman
- LeetCode : Roman to Integer
- [Leetcode] Roman to Integer
- [Leetcode] Integer to Roman
- Leetcode: Integer to Roman
- Leetcode: Roman to Integer
- LeetCode Integer to Roman
- 【leetcode】Roman to Integer
- hdu 1087 递增子序列和
- java构造器小结
- 【图文详解】scrapy爬虫与动态页面——爬取拉勾网职位信息(2)
- activiti modeler在线编辑器关闭跳转路劲自定义
- [leetcode] 65. Valid Number 解题报告
- Leetcode: Roman to integer
- 51nod 1134 最长递增子序列 nlogn lis
- js判断IE版本
- 系统属性调用评估报告
- 第10、11周项目3 警察和厨师(1)
- 什么是Node.js
- 231. Power of Two
- Spark入门实战系列--5.Hive(上)--Hive介绍及部署
- 优先队列-堆排序