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

字符 数值

I -> 1

V -> 5

X -> 10

L -> 50

C -> 100

D -> 500

M -> 1000

通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 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 的范围

class Solution(object):

def romanToInt(self, s):

# 定义罗马数字和整数的对应字典

num_dict = {"I": 1, "V": 5, "X": 10, "L": 50, "C": 100, "D": 500, "M": 1000}

len_s = len(s)

result = 0

for i in range(len(s)):

if i > 0 and num_dict[s[i]] > num_dict[s[i-1]]:

result += num_dict[s[i]] - 2*num_dict[s[i-1]]

else:

result += num_dict[s[i]]

return result

我不生产程序,我只是程序的搬运工

python罗马数字转换,Python 罗马数字转换整数相关推荐

  1. 计蒜客挑战难题:整数转换成罗马数字

    给定一个整数num,( 1<=num<=3999),将整数转换成罗马数字. 如1,2,3,4,5对应的罗马数字分别位I,II,III,IV,V等. 格式: 第一行输入一个整数,接下来输出对 ...

  2. 罗马数字 java_java将罗马数字转换成整数算法详解-Fun言

    题目: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M.字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为 ...

  3. 【LeetCode】【Java】13. 罗马数字转整数——给定一个罗马数字,将其转换成整数。输入确保在 1 到 3999 的范围内。

    13. 罗马数字转整数 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 ...

  4. python123温度转换-python二级备考 day2

    1. python 语言概述 python 蟒蛇 拥有者 PSF (Python Software Foundation) 非盈利组织,致力于保护python语言 开放.开源.发展 Guido 198 ...

  5. Python 日期和时间戳的转换

    Python 日期和时间戳的转换 1. Python中处理时间的模块 Python中处理时间的模块有time.datetime和calendar. 在Python中表示时间的方式: 时间戳:10位整数 ...

  6. 罗马数字(Python)

    题目: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即 ...

  7. Python实现银行金额大写汉字转换【简单易懂,代码可以直接运行】

    Python实现银行金额大写汉字转换[简单易懂] 业务需求: •银行电子支票业务在金额部分需要使用大写的汉字,因此需要将用户录入的数字信息转变为汉字. •目前只需完成1~5位整数转换即可. 关键技术分 ...

  8. Python实现银行金额大写汉字转换【简单易懂】!!

    Python实现银行金额大写汉字转换[简单易懂] 业务需求: •银行电子支票业务在金额部分需要使用大写的汉字,因此需要将用户录入的数字信息转变为汉字. •目前只需完成1~5位整数转换即可. 关键技术分 ...

  9. 1.3 实例1:温度转换 | Python语言程序设计(嵩天)

    文章目录 课程简介 第一章 Python基本语法 1.3 实例1:温度转换 问题分析 两种温度体系 需求分析 确定问题的计算部分 划分问题的边界 实例编写 举一反三 Python语法元素理解 改变输入 ...

  10. Python入门程序练习题-温度转换

    Python入门程序练习题-温度转换 题目说明: 温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fabrenheit).‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪ ...

最新文章

  1. 语言分类,我接触和我想学习的
  2. socket通信需要网线连接吗_从socket到TCP协议,透彻理解网络编程
  3. 技术人创业建站简略指南(第一季)
  4. python使用redis做缓存_Python的Flask框架使用Redis做数据缓存的配置方法
  5. Nginx源码编译安装
  6. php制作日历的代码,php日历制作代码分享_PHP教程
  7. dcdc升压计算器excel_DC-DC电路计算器app下载|DC-DC电路计算器安卓版下载_v1.0.1_9ht安卓下载...
  8. 通过MapReduce统计PV和UV
  9. 2021-05-12 MongoDB面试题 什么是MongoDB分片集群
  10. 模型推理时显存不足问题
  11. sb3500_您的代码如何在3500万人的家庭中成为社会公益的代言人
  12. Java生成唯一主键
  13. 2020.4.22课堂笔记(继承、多态、抽象类、抽象方法)
  14. 基于FPGA 的PLC/PAC 硬件运行时的实现
  15. Third season eighteenth episode,hypnotic recording(maybe you can remember 吕子乔)
  16. Excel表格转Markdown格式
  17. 主流WEB漏洞扫描器种类及其指纹特征分析
  18. laravel 发送邮箱验证码
  19. Opencv实战——图像拼接
  20. HT7180 3.7V升12V/2A内置MOS大电流升压IC解决方案

热门文章

  1. 微信小程序样式-id选择器的使用教程
  2. 脑机直播 x 赛博驱魔!瑞云专访揭秘胶囊计划国风科幻神作《终极体验》制作幕后...
  3. 税务会计实务【19】
  4. Logism · 八位可控加减法器 实验
  5. 计算机关机的命令,电脑关机命令是什么
  6. Java锁synchronized关键字学习系列之CAS和对象头
  7. CondaValueError : prefix already exists: /**/anaconda3
  8. 三、第四节 创建https服务
  9. IE无法浏览网页的常见原因及解决方法(转)
  10. python round用法_Python round 函数