【LeetCode系列】羅馬數字轉整數 Roman to Integer

我的解答:

    int romanToInt(char *s) {
        int sum = 0;
        while(*s){
            int before = present(s);
            int after = present(++s);
            if(before < after){
                sum = sum + after - before;
                ++s;
            }else{
                sum = sum + before;
            }
        }
        return sum;
    }
    
    int present(char *s){
        int x = 0;
        switch(*s){
            case 'I' : x = 1;break;
            case 'V' : x = 5;break;
            case 'X' : x = 10;break;
            case 'L' : x = 50;break;
            case 'C' : x = 100;break;
            case 'D' : x = 500;break;
            case 'M' : x = 1000;break;
        }
        return x;
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章