zoukankan      html  css  js  c++  java
  • LeetCode #13 简单题(罗马数字转整数)

    题目: 罗马数字转整数,3999以内。

    题解: 特殊处理一下 "I" "X" "C"就好,其他直接加上去就行了

    class Solution {
    public:
        int romanToInt(string s) {
            int n = (int)s.size();
            int ans = 0;
            for (int i = 0; i < n; ++i){
                if (s[i] == 'I'){
                    if (i < n - 1){
                        if (s[i + 1] == 'V')ans += 4, i = i + 1;
                        else if (s[i + 1] == 'X')ans += 9, i = i + 1;
                        else ans += 1;
                    }
                    else{
                        ans += 1;
                    }
                }
                else if (s[i] == 'X'){
                    if (i < n - 1){
                        if (s[i + 1] == 'L')ans += 40, i = i + 1;
                        else if (s[i + 1] == 'C')ans += 90, i = i + 1;
                        else ans += 10;
                    }
                    else{
                        ans += 10;
                    }
                }
                else if (s[i] == 'C'){
                    if (i < n - 1){
                        if (s[i + 1] == 'D')ans += 400, i = i + 1;
                        else if (s[i + 1] == 'M')ans += 900, i = i + 1;
                        else ans += 100;
                    }
                    else{
                        ans += 100;
                    }
                }
                else if (s[i] == 'V'){
                    ans += 5;
                }
                else if (s[i] == 'L'){
                    ans += 50;
                }
                else if (s[i] == 'D'){
                    ans += 500;
                }
                else{
                    ans += 1000;
                }
            }
            return ans;
        }
    };
  • 相关阅读:
    Linux下对拍(A+B问题)
    洛谷 P1043 数字游戏 区间DP
    6.22 集训--DP复习一
    洛谷 P1220 关路灯 区间DP
    A*算法求K短路模板 POJ 2449
    点分治模板 POJ 1741
    HDU
    棋子游戏 51Nod
    数论习题总结
    CodeForces
  • 原文地址:https://www.cnblogs.com/error408/p/11651120.html
Copyright © 2011-2022 走看看