`
plan454
  • 浏览: 7004 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

Roman to Integer

 
阅读更多
Given a roman numeral, convert it to an integer.

Input is guaranteed to be within the range from 1 to 3999.
这个和之前的相比就是倒序一下
  public int romanToInt(String s) {
        int result = 0;
        if(s != null && s.length()>0){
/*        String[] ge = {"I", "II","III", "IV","V","VI","VII", "VIII","IX"};
        String[] hen = {"X","XX","XXX","XL","L","LX","LXX","LXXX","XC"};
        String[] he = {"C","CC","CCC","CD", "D","DC","DCC","DCCC","CM"};
        String[] thr = {"M","MM","MMM"};*/
        HashMap<Character,Integer> hm = new  HashMap<Character,Integer>();
       
        hm.put('I', 1);
        hm.put('V', 5);
        hm.put('X', 10);
        hm.put('L', 50);
        hm.put('C', 100);
        hm.put('D', 500);
        hm.put('M', 1000);
        int len = s.length();
        for(int i = 0 ;i<len;i++){
        	int temp = hm.get(s.charAt(0));
        	if(s.charAt(0)== 'I'){
        		temp = (s.contains("V")||s.contains("X"))?-temp:temp;
        	}else if(s.charAt(0) == 'X'){
        		temp = (s.contains("L")||s.contains("C"))?-temp:temp;
        	}else if(s.charAt(0) == 'C'){
        		temp = (s.contains("D")||s.contains("M"))?-temp:temp;
        	}
        	s = s.substring(1);
        	result += temp;
        	
        	
        }
        }
        return result;
      
        }
分享到:
评论

相关推荐

    Roman to Integer完整代码

    leetcode上Roman to Integer的完整C++代码,已被accepted

    LeetCode Roman to Integer解决方案

    LeetCode Roman to Integer解决方案

    qycl50224#leetcode#13. 罗马数字转整数 Roman to Integer1

    13. 罗马数字转整数 Roman to Integer用哈希存储映射字符---&gt;对映的值对字符串的字符挨个判断,考虑下一个字符如果下一个字符大于当前字符,su

    程序员面试宝典LeetCode刷题手册

    13. Roman to Integer 15. 3Sum 16. 3Sum Closest 17. Letter Combinations of a Phone Number 18. 4Sum 19. Remove Nth Node From End of List 20. Valid Parentheses 21. Merge Two Sorted Lists 22. Generate ...

    cpp-算法精粹

    Integer to Roman Roman to Integer Count and Say Anagrams Valid Anagram Simplify Path Length of Last Word Isomorphic Strings Word Pattern 栈和队列 栈 Min Stack Valid Parentheses Longest Valid ...

    Leetcode回文串拼接-leetcode_note:用于记录leetcode题目的解析

    Integer 8.String To Integer 9.Palindrome Number 10.String To Integer 11.Container With Most Water 12.Integer To Roman 13.Roman To Integer 289 347 380 442 457 Circular Array Loop 535 Encode and Decode ...

    leetcode530-algorithm:算法

    Integer 008 String to Integer (atoi) 009 Palindrome Number 010 Regular Expression Matching 011 Container With Most Water 012 Integer to Roman 013 Roman to Integer 014 Longest Common Prefix 015 3Sum ...

    leetcode双人赛-LeetCode:力扣笔记

    Integer 简单 字串 String to Integer (atoi) 中等 字串 麻烦 Palindrome Number 简单 字串 Container With Most Water 中等 动态规划 重要 Integer to Roman 中等 重要 Roman to Integer 简单 重要 Longest Common ...

    leetcodepython001-algorithm:leetcode问题(cpp、java、python),书籍破解_the_coding

    Integer 008. String to Integer 009. Palindrome Number 010. Regular Expression Matching 011. Container With Most Water 012. Integer to Roman 013. Roman to Integer 014. Longest Common Prefix 019. R

    leetcode2sumc-leetcode:JavaScript版本leetcode中文版代码

    Integer 简单 8 String to Integer (atoi) 中等 9 Palindrome Number 简单 11 Container With Most Water 中等 12 Integer to Roman 中等 13 Roman to Integer 简单 14 Longest Common Prefix 简单 15 3Sum 中等 16 ...

    leetcode338-LeetCode:LeetCode刷题总结

    Integer 8.String to Integer (atoi) 9.Palindrome Number 10.Regular Expression Matching 11.Container With Most Water 12.Integer to Roman 13.Roman to Integer 14.Longest Common Prefix (Trie树待完成) 15.3...

    leetcode中国-leetcode:leetcode刷题

    to Integer (atoi) addBinary longestPalindrome maximal rectangle :dp问题,较难 largestRectangleArea 求直方图的最大面积,左右两次扫面+剪枝优化 Valid Parentheses 用栈判断括号匹配 Regular Expression ...

    lrucacheleetcode-leetcode:leetcode

    Integer 9. Palindrome Number 11. Container With Most Water 12. Integer to Roman 13. Roman to Integer 14. Longest Common Prefix 15. 3Sum 20. Valid Parentheses 21. Merge Two Sorted Lists 22. Generate ...

    leetcode跳跃-LeCode:乐科

    Integer 整数反转 8. String to Integer (atoi) 字符串转换整数 (atoi) 9. Palindrome Number 回文数 10. Regular Expression Matching 正则表达式匹配 11. Container With Most Water 盛最多水的容器 12. Integer ...

    leetcode中文版-LeetCode:LeetcodeC++/Java

    Roman to Integer 罗马数字转整数 number,string 14 Longest Common Prefix 最长公共前缀 string 16 3Sum Closest 最接近的三数之和 two pointers,array 21 Merge Two Sorted Lists 合并两个有序链表 lin

    Flamg:火焰——青春的火焰在熊熊燃烧

    Flamg The flames of youth are raging. 解题口诀 动规递归是神器, 全无用处想哈希。... Integer to Roman][23]][24] [![13. Roman to Integer][25]][26] [![14. Longest Common Prefix][27]][28] [!

    LeetCode最全代码

    462 | [Minimum Moves to Equal Array Elements II](https://leetcode.com/problems/minimum-moves-to-equal-array-elements-ii/) | [C++](./C++/minimum-moves-to-equal-array-elements-ii.cpp) [Python](./Python/...

    leetcode卡-LeetCode:LeetCode题解

    Integer(atoi) :star: :star: :star: 注意细节,溢出 ---- strlen :star: :star: :star: const char,size_t类型 ---- strcpy :star: :star: :star: 字符串复制,返回值,赋值语句 0028 strStr :star: :star: :star:...

    leetcode题库-LeetCode:力码

    Integer.cpp 9 回文数 Palindrome Number.cpp 12 整数转罗马数字 Integer to Roman.cpp 13 罗马数字转整数 Roman to Integer.cpp 15 三数之和 3Sum.cpp 最接近的三数之和 3Sum Closest .cpp 20 有效的括号 Valid ...

    javalruleetcode-LeetCode:LeetCode算法问题

    java lru leetcode Fighting for a job! 记录找工作期间搬运的题,全部使用Java实现,本人C++鶸 1 双指针 编号 题目 LeetCode 11 Container With Most Water LeetCode ...Roman to Integer LeetCode 6 Zi

Global site tag (gtag.js) - Google Analytics