首页 > 其他 > 详细

LeetCode记录之13——Roman to Integer

时间:2017-09-03 15:15:23      阅读:225      评论:0      收藏:0      [点我收藏+]

能力有限,这道题采用的就是暴力方法,也只超过了39%的用户。需要注意的就是罗马数字如果IXC的后一位比前一位大的采取的是减的方式。

  Given a roman numeral, convert it to an integer.

  Input is guaranteed to be within the range from 1 to 3999.

  给定一个罗马数字,将其转换为整数。

  输入保证在1到3999之间。


 

  

 1 class Solution {
 2     public int romanToInt(String s) {
 3         int length=s.length();
 4         int num=0;
 5         for(int i=0;i<length;i++){
 6             switch (s.charAt(i)) {
 7             case ‘I‘:{
 8                 if((i+1!=length)&&s.charAt(i+1)!=‘I‘){
 9                     num-=1;
10                     break;
11                 }
12                 else {
13                     num+=1;
14                     break;
15                 }
16             }    
17             case ‘X‘:
18                 if((i+1!=length)&&((s.charAt(i+1)==‘M‘)||(s.charAt(i+1)==‘D‘)||(s.charAt(i+1)==‘C‘)||(s.charAt(i+1)==‘L‘))){
19                     num-=10;
20                     break;
21                 }
22                 else {
23                     num+=10;
24                     break;
25                 }
26             case ‘C‘:
27                 if((i+1!=length)&&((s.charAt(i+1)==‘M‘)||(s.charAt(i+1)==‘D‘))){
28                     num-=100;
29                     break;
30                 }
31                 else {
32                     num+=100;
33                     break;
34                 }
35             case ‘M‘:
36                 num+=1000;
37                 break;
38             case ‘V‘:
39                 num+=5;
40                 break;
41             case ‘L‘:
42                 num+=50;
43                 break;
44             case ‘D‘:
45                 num+=500;
46                 break;
47             default:
48                 break;
49             }
50         }
51         return num;
52     }
53 }

 

LeetCode记录之13——Roman to Integer

原文:http://www.cnblogs.com/vincentme/p/7469566.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!