广告
返回顶部
首页 > 资讯 > 后端开发 > Python >20190502-罗马数字转换为数字
  • 443
分享到

20190502-罗马数字转换为数字

罗马数字转换为数字 2023-01-31 00:01:22 443人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

题目描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符          数值 I             1 V             5 X             10 L             50

题目描述

罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。

字符          数值

I             1

V             5

X             10

L             50

C             100

D             500

M             1000

例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做  XXVII, 即为 XX + V + II 。

通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII,而是 IV。数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4 。同样地,数字 9 表示为 IX。这个特殊的规则只适用于以下六种情况:

I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。

X 可以放在 L (50) 和 C (100) 的左边,来表示 40 和 90。

C 可以放在 D (500) 和 M (1000) 的左边,来表示 400 和 900。

给定一个罗马数字,将其转换成整数。输入确保在 1 到 3999 的范围内。

示例 1:

输入: "III"

输出: 3

示例 2:

输入: "IV"

输出: 4

示例 3:

输入: "IX"

输出: 9

示例 4:

输入: "LVIII"

输出: 58

解释: L = 50, V= 5, III = 3.

示例 5:

输入: "MCMXCIV"

输出: 1994

解释: M = 1000, CM = 900, XC = 90, IV = 4.

考点

  1. 字典映射
  2. List根据index遍历取值并比较大小
  3. 字典取值

算法

首先建立一个dict来映射符号和值,然后对字符串从左到右遍历,判断左右数值的大小,定义result变量存储运算结果:

  1. s[i]>=s[i+1] 则result加上字符对应的数字
  2. s[i]<=s[i+1] 则result减去字符对应的数字

代码

def romanToInt(s):
        """
        :type s: str
        :rtype: int
        """
        dic = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000}
        result=0        
        for i in range(len(s)):            
            if i<len(s)-1 and dic[s[i]]<dic[s[i+1]]:                
                result-=dic[s[i]]
            else:
                result+=dic[s[i]]
        return ans

 

--结束END--

本文标题: 20190502-罗马数字转换为数字

本文链接: https://www.lsjlt.com/news/182145.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 20190502-罗马数字转换为数字
    题目描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符          数值 I             1 V             5 X             10 L             50...
    99+
    2023-01-31
    罗马数字 转换为 数字
  • 罗马数字与阿拉伯数字转换
    罗马数字与阿拉伯数字对应关系如下: 且“II”表示2,“III”表示3,“IV”表示4,“VI表示6”,“VII”表示7,“VIII”表示8,“IX”表示9,其余的类似。 阿拉伯数转换成罗马数字 class Solution(obje...
    99+
    2023-01-31
    罗马数字 阿拉伯数字
  • Python练习【3】【罗马数字转换/查
    题目1:罗马数字转换 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M字符 数值I 1V 5X 10L 50...
    99+
    2023-01-31
    罗马数字 Python
  • C#算法之罗马数字转整数
    罗马数字转整数 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I ...
    99+
    2022-11-13
  • Python实现将罗马数字转换成普通阿拉伯数字的方法
    本文实例讲述了Python实现将罗马数字转换成普通阿拉伯数字的方法。分享给大家供大家参考,具体如下: 罗马数字,我们在某些电视中或者现实生活中都曾经看到过,近日,学习Python时,也遇到了罗马数字的解说,...
    99+
    2022-06-04
    罗马数字 阿拉伯数字 转换成
  • C++实现将整数转化成罗马数字
    本篇内容介绍了“C++实现将整数转化成罗马数字”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Integer to Roman 整数转化成罗马...
    99+
    2023-06-20
  • C++实现LeetCode(12.整数转化成罗马数字)
    [LeetCode] 12. Integer to Roman 整数转化成罗马数字 Roman numerals are represented by seven different...
    99+
    2022-11-12
  • C++实现LeetCode(13.罗马数字转化成整数)
    [LeetCode] 13. Roman to Integer 罗马数字转化成整数 Roman numerals are represented by seven different...
    99+
    2022-11-12
  • C++怎么实现罗马数字转化成整数
    本篇内容介绍了“C++怎么实现罗马数字转化成整数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Roman to Integer 罗马数字转化...
    99+
    2023-06-20
  • php将数字转换为数组
    我们知道,在编程中,数字和数组是两个不同的概念。数字是表示数值的基本单位,而数组则是存储多个数据项的集合。有时我们需要把数字转换成数组。在PHP中,实现这一过程非常简单。PHP提供了许多内置的函数,可以轻松地将数字转换为数组。以下是一些常用...
    99+
    2023-05-19
  • python字符串怎么转换为数字
    要将一个字符串转换为数字,可以使用以下方法: 使用`int()`函数将字符串转换为整数。例如:`num = int("123")...
    99+
    2023-10-25
    python
  • javascript数字转换为字符串的方法
    本篇内容介绍了“javascript数字转换为字符串的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!转...
    99+
    2022-10-19
  • php字符串转换为数字的方法
    php字符串转换为数字的方法:1、在sublime_text软件中新建一个php文件。2、编写php网页结构(<php>)。3、声明php网页和浏览器交互的文件类型和编码。4、定义字符串变量,。5、使用var_dump()输出变...
    99+
    2022-10-23
  • JavaScript如何将字符串转换为数字
    小编给大家分享一下JavaScript如何将字符串转换为数字,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!将字符串转换为数字我们需要的只是 + 运算符。请注意它仅...
    99+
    2023-06-27
  • javascript怎么将字符串转换为数字
    这篇文章将为大家详细讲解有关javascript怎么将字符串转换为数字,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。JavaScript可以做什么1.可以使网页具有交互性,例如响应用户点击,给用户提供更好...
    99+
    2023-06-14
  • JavaScript如何将数字转换为字符串
    这篇文章给大家分享的是有关JavaScript如何将数字转换为字符串的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。将数字转换为字符串我们只需要使用带空引号的串联运算符。var converted_num...
    99+
    2023-06-27
  • php 字符串转换为数组
    PHP是一种流行的、面向Web应用程序的脚本语言,它可以处理各种不同类型的数据。其中,字符串和数组是PHP的两个常见数据类型。在编写PHP程序的过程中,我们常常需要将字符串转换成数组,这里介绍几种PHP中将字符串转换成数组的方法。explo...
    99+
    2023-05-22
  • php 数组转换为字符串
    PHP中数组和字符串之间的转换是非常常见的操作。在实际开发中,我们可能需要将一个数组转换成字符串,比如将多个选项值拼接成字符串,或者将一整个数组的数据处理成一个字符串来方便传输或存储。下面,我将会介绍几种不同的方法来将PHP数组转换成字符串...
    99+
    2023-05-22
  • php字符串转换为数值
    使用基本数据类型转换float,double或integer,可以不使用函数转换 $num = "1234.567";// 使用int类型转换echo (int)$num, "\n";// 使用flo...
    99+
    2023-09-04
    php 开发语言 linux
  • Python中怎么将字符串转换为数字
    可以使用int()函数将字符串转换为整数,使用float()函数将字符串转换为浮点数。示例代码如下:```python# 将字符串转...
    99+
    2023-10-11
    python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作