#13 LeetCode——Roman to Integer
来源:互联网 发布:druid优化 编辑:程序博客网 时间:2024/04/30 00:36
将罗马字符转化为阿拉伯数字表示
注:
罗马数字表示:I(1)、V(5)、X(10)、L(50)、C(100)、D(500)、 M(1000)
java代码如下
public class Solution { public int romanToInt(String s) { char[] nums = s.toCharArray(); int result = 0; int[] values = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1 }; for (int i = 0; i < nums.length; i++) { //1000 if(nums[i] == 'M') { result += 1000; } //100 if(nums[i] == 'C' && i + 1 < nums.length) { if(nums[i + 1] == 'M' || nums[i + 1] == 'D') { result -= 100; } else { result += 100; } } else if(nums[i] == 'C') { result += 100; } //500 if(nums[i] == 'D') { result += 500; } //10 if(nums[i] == 'X' && i + 1 < nums.length) { if(nums[i + 1] == 'C' || nums[i + 1] == 'L') { result -= 10; } else { result += 10; } } else if(nums[i] == 'X') { result += 10; } //50 if(nums[i] == 'L') { result += 50; } //1 if(nums[i] == 'I' && i + 1 < nums.length) { if(nums[i + 1] == 'X' || nums[i + 1] == 'V') { result -= 1; } else { result += 1; } } else if(nums[i] == 'I') { result += 1; } //5 if(nums[i] == 'V') { result += 5; } } return result; }}
0 0
- #13 LeetCode——Roman to Integer
- leetcode— Integer to Roman
- 【LeetCode】LeetCode——第13题:Roman to Integer
- LeetCode——Integer to Roman
- LeetCode——Integer to Roman
- LeetCode——Roman to Integer
- leetcode 012 —— Integer to Roman
- leetcode 013 —— Roman to Integer
- LeetCode题解——Roman to Integer
- LeetCode题解——Integer to Roman
- #12 LeetCode——Integer to Roman
- leetcode——13——Roman to Integer
- leetcode第13题——*Roman to Integer
- 【leetcode】String——Roman to Integer(13)
- 刷LeetCode(13)——Roman to Integer
- LeetCode 13 Roman to Integer (easy)——python
- leetcode-13:Roman to Integer
- leetcode 13 Roman to Integer
- linux下ssh安装 和 scp命令 使用
- 多线程资源共享
- 黑马程序员-----@class的使用
- android内存管理
- 正则表达式
- #13 LeetCode——Roman to Integer
- UVA 10570 Meeting with Aliens
- Django: 'module' object has no attribute 'index'
- mysql分库分表
- 比较实用的ADT快捷键
- 51nod 算法马拉松6(索函数)(规律题目)
- 【内存优化】SparseArray源码分析
- XML_SAX_解析本地文件
- spring整合hibernate配置注解事务的相关问题