资讯专栏INFORMATION COLUMN

罗马数字转换成阿拉伯数字

赵连江 / 956人阅读

摘要:罗马数字转换成阿拉伯数字给出一个罗马数字字符串,返回此数字的阿拉伯数字思路存储单个罗马字母代表的阿拉伯数字初始状态,循环遍历字符串,如果所代表的阿拉伯数字大于的,则加到上,如果小于,则减去代表的阿拉伯数字代码右边界保证不会下标越界本

罗马数字转换成阿拉伯数字 Roman to integer

给出一个罗马数字(字符串),返回此数字的阿拉伯数字(int)

Given a roman numeral, convert it to an integer.

Input is guaranteed to be within the range from 1 to 3999.

example 1

input: CCCLXXXIX
output: 389
思路

dict存储单个罗马字母代表的阿拉伯数字

初始状态sum = 0,循环遍历字符串,如果 s[i]所代表的阿拉伯数字大于s[i+1]的,则加到sum上,如果小于,则sum减去s[i]代表的阿拉伯数字

代码
class Solution(object):
    def romanToInt(self, s):
        """
        :type s: str
        :rtype: int
        """
        a = {"M": 1000, "D": 500, "C": 100, "L": 50, "X": 10, "V": 5, "I": 1}
        sum = 0
        for i in range(len(s) - 1): #range右边界len(s) - 1 保证 i + 1不会下标越界
            if a[s[i]] < a[s[i+1]]:
                sum -= a[s[i]]
            else:
                sum += a[s[i]]
        return sum + a[s[len(s) - 1]]

本题以及其它leetcode题目代码github地址: github地址

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38671.html

相关文章

  • JavaScript类型转换的迷糊事儿

    摘要:下面分几步来简单的探探不同类型的转换吧以下的内容,都可以从权威指南中找到。其他值转换成在编写代码的过程中,几乎不用考虑它的取值类型。核心内置类,会尝试先于可以理解为对象优先转换成数字例外的是,利用的是转换。 最近在写公司的登录注册模块,遇到类型不同相比较的时候,就心惊胆战,每次都要用浏览器来验证一下,决定乱七八糟的随便写一下,方便日后自己回顾知识~ 弱类型带来的那些让人迷糊的事 弱类型...

    harriszh 评论0 收藏0
  • 详解加法运算符

    摘要:数字加转为,再做加法运算。在这里,被解析成一个空的因此实际上解析成这样就是把一个空数组转换成数值,调用之后还是自身,因此调用得到一个空字符串,转换成数字。参考详解的加法运算符中和的返回值情况是怎样的 JavaScript 里面不同的类型做加法之前,需要做各种转换,这里做一个比较完善的总结。 基本转换规则 运算双方存在对象时 如果有一个对象,那么先把它转换成基本类型值 转换之后,如...

    刘永祥 评论0 收藏0
  • 阿拉数字转换罗马数字

    摘要:阿拉伯数字转换成罗马数字给出一个阿拉伯数字,返回此数字的罗马数字表示思路用表记录关键的罗马数字和阿拉伯数字,将输入循环除以,,这些关键数字,余数为,将对应的罗马字符串加次看到大神的思路,也是查表,但更加精妙,将数字分解为千位,百位,十位和个 阿拉伯数字转换成罗马数字 Integer to Roman 给出一个阿拉伯数字,返回此数字的罗马数字表示 Given an integer, c...

    2bdenny 评论0 收藏0
  • JavaScript核心概念(1):类型转换

    摘要:核心内置类,会尝试先于可以理解为对象优先转换成数字例外的是,利用的是转换。非核心的对象,通过自己的实现中定义的方法转换成原始值。 本文首发于个人博客 showImg(https://segmentfault.com/img/remote/1460000015954811?w=639&h=724); 看到这个是不是有一种想打人的感觉,垃圾 JavaScript,这特么都什么鬼,相信很多...

    tracymac7 评论0 收藏0
  • js变量类型

    js有六种原始类型:undefined、null、string、number、boolean、object(Array和Function都是特殊的Object),它们之间可以相互转换 Number类型 整数类型可以用四种进制表示,最常见的是10进制 10进制 16进制 以0x开头 8进制 以0开头,如果后面包含0-7以外的数字,视为是10进制 2进制 以0b开头,如果后面包含0-1以外的数字,会...

    cloud 评论0 收藏0

发表评论

0条评论

赵连江

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<