美文网首页
13. Roman to Integer

13. Roman to Integer

作者: wtmxx | 来源:发表于2018-02-04 22:37 被阅读0次
    class Solution {
        private static Map<String,Integer> map = new HashMap<>();
        {
            map.put("M",1000);
            map.put("CM",900);
            map.put("D",500);
            map.put("CD",400);
            map.put("C",100);
            map.put("XC",90);
            map.put("L",50);
            map.put("XL",40);
            map.put("X",10);
            map.put("IX",9);
            map.put("V",5);
            map.put("IV",4);
            map.put("I",1);
        }
        public int romanToInt(String s) {
            int i=0,res = 0;
            while(i<s.length()){
                if(i<s.length()-1&&map.containsKey(s.substring(i,i+2))){
                    res+=map.get(s.substring(i,i+2));
                    i+=2;
                }else if(map.containsKey(String.valueOf(s.charAt(i)))){
                    res+=map.get(String.valueOf(s.charAt(i)));
                    i++;
                }
            }
            return res; 
        }
    }
    

    相关文章

      网友评论

          本文标题:13. Roman to Integer

          本文链接:https://www.haomeiwen.com/subject/limvzxtx.html