【新手上路】LeetCode刷题之“罗马数字转整数”

【新手上路】LeetCode刷题之“罗马数字转整数”,第1张

【新手上路】LeetCode刷题之“罗马数字转整数”

这还是一道简单题,但是如果想不到相邻字符串之间的关系,就很难有思路。

例:‘IV’对应4,‘VI’对应5;‘IX’对应9,‘XI’对应11。那么如果一个字符对应的数字比它下一位字符对应的数字大,那么我们就应该加上该字符对应的数字,反之就要减去。

#include    //稳妥起见写上字符串库
int Judge(char x)   //对应的表函数
{
    switch(x)
    {
        case 'I':return 1;
        case 'V':return 5;
        case 'X':return 10;
        case 'L':return 50;
        case 'C':return 100;
        case 'D':return 500;
        case 'M':return 1000;   //因为写在函数里,所以return就会退出,无需break
    }
    return 0;   //象征性地写一写否则会报错
}

int romanToInt(char * s){
    int len = strlen(s);
    int result = 0;
    for(int i=0;i 

 

 

class Solution:
    def romanToInt(self, s: str) -> int:
        dic = { 'I':1,      #一个映射字典
                'V':5, 
                'X':10, 
                'L':50,
                'C':100, 
                'D':500, 
                'M':1000
                }        
        result = 0        #实现方法和c语言相同
        for i in range(len(s)):            
            if i 

 

 

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/zaji/5719003.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存