算法练习17——罗马数字转整数

LeetCode 13 罗马数字转整数

罗马数字包含以下七种字符: 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。
给定一个罗马数字,将其转换成整数。

蛮力解法

class Solution:def romanToInt(self, s: str) -> int:res = 0d = {"M": 1000,"CM": 900,"D": 500,"CD": 400,"C": 100,"XC": 90,"L": 50,"XL": 40,"X": 10,"IX": 9,"V": 5,"IV": 4,"I": 1,}if len(s) == 1:return d[s]while s:for k in d.keys():if s.startswith(k):res += d[k]s = s[len(k) :]return res

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/833445.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c++ memset 指针示例

目录 C 传一个float指针&#xff0c;在函数内部修改指针的值 c memset 指针示例 C 传一个float指针&#xff0c;在函数内部修改指针的值 #include <iostream>// 定义一个函数&#xff0c;它接受一个指向float的指针 void modifyValue(float* ptr) {// 通过解引用指针来…

Tomcat8集群快速搭建指南

作为一名热衷于分布式系统的开发者&#xff0c;你或许对Tomcat8已经不陌生了。然而&#xff0c;单个Tomcat实例的性能和可用性总有瓶颈&#xff0c;要实现高可用性和更强的性能&#xff0c;就需要搭建一个Tomcat集群。在这篇文章中&#xff0c;我将带你一步步搭建一个基于Tomca…

TypeScript学习笔记(三) 数组

大家好&#xff0c;我是半虹&#xff0c;这篇文章来讲 TypeScript 中的数组以及元组类型 1、概述 在 JavaScript 中的数组&#xff0c;在 TypeScript 里&#xff0c;可具体分为数组以及元组两种类型 先来简单对比一下区别&#xff1a; JavaScript 中的数组&#xff0c;可以用…

《视觉十四讲》例程运行记录(3)——运行ch6的例程中Ceres和g2o库的安装

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、安装Ceres1. 安装依赖2. 编译安装 二、安装g2o1. 安装依赖项2. 编译安装3. 可能出现的报错(1) 报错一 一、安装Ceres 1. 安装依赖 终端输入&#xff1a; sud…

wow-debug文件说明

wow-debug文件说明 项目地址&#xff1a;https://gitee.com/wow-iot/wow-iot7本文件的的功能为输出打印信息&#xff0c;目前架构debug信息按照模块名称进行区别使用&#xff0c;且支持打印级别设置&#xff1b;加入shell指令&#xff0c;可通过debug XXX on/off 来实时开启或…

计算有效声压

计算有效声压 clear all; %%----------------------------------------------读取文件------------------------------------------ % 从wav文件读入语音数据&#xff0c;该语音采样率16k&#xff0c;故信号最高频率8k。 [x,fs]audioread(C2_3_y.wav); % 取x的一个通道 xx(:,1)…

Google准备好了吗?OpenAI发布ChatGPT驱动搜索引擎|TodayAI

在科技界波澜壮阔的发展中&#xff0c;OpenAI正式宣布其最新突破——一个全新的基于ChatGPT技术的搜索引擎&#xff0c;旨在直接挑战谷歌在搜索领域的统治地位。这一创新将可能彻底改变用户上网搜索的方式。 据悉&#xff0c;这款AI驱动的搜索引擎利用了ChatGPT的强大功能&…

EasyExcel多行表头带动态下拉框导入导出具体实现

一、准备环境包 maven:<!-- guava本地缓存--> <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>32.1.2-jre</version> </dependency><!--easyexcel依赖--> <dependen…

免费SSL证书?轻松申请攻略来了!

在当今的互联网时代&#xff0c;网络安全已经成为一个不容忽视的重要课题。随着在线交流和交易活动的增加&#xff0c;保护网站和用户信息的重要性日益突显。SSL证书&#xff0c;即安全套接字层证书&#xff0c;它为互联网通信提供了加密服务&#xff0c;确保数据的安全性和完整…

淘宝扭蛋机小程序开发:转动幸运,开启无限惊喜

一、探索未知&#xff0c;开启全新扭蛋体验 淘宝扭蛋机小程序&#xff0c;为您带来一场前所未有的扭蛋盛宴。在这个充满神秘与乐趣的平台上&#xff0c;每一次点击都将引领您走进未知的宝藏世界&#xff0c;每一次旋转都可能揭示出意想不到的惊喜。 二、海量商品&#xff0c;…

Kubernetes 教程:在 Containerd 容器中使用 GPU

原文链接:Kubernetes 教程:在 Containerd 容器中使用 GPU 云原生实验室本文介绍了如何在使用 Containerd 作为运行时的 Kubernetes 集群中使用 GPU 资源。https://fuckcloudnative.io/posts/add-nvidia-gpu-support-to-k8s-with-containerd/ 前两天闹得沸沸扬扬的事件不知道…

3D 交互展示该怎么做?

在博维数孪&#xff08;Bowell&#xff09;平台制作3D交互展示的流程相对简单&#xff0c;主要分为以下几个步骤&#xff1a; 1、准备3D模型&#xff1a;首先&#xff0c;你需要有一个3D模型。如果你有3D建模的经验&#xff0c;可以使用3ds Max或Blender等软件自行创建。如果没…

护眼台灯十大品牌哪个好?热销榜护眼灯十大品牌推荐

护眼台灯十大品牌哪个好&#xff1f;在这篇文章中&#xff0c;我将向大家介绍十大护眼台灯品牌&#xff0c;其中包括书客、松下、飞利浦等知名品牌。我精心挑选这些品牌&#xff0c;旨在为大家提供明智的选择参考。这些品牌的护眼台灯拥有的功能比较多&#xff0c;提供的光线也…

揭秘软胶囊品质的秘密武器:西奥机电CHT-01软胶囊弹性硬度测试仪

揭秘软胶囊品质的秘密武器&#xff1a;西奥机电CHT-01软胶囊弹性硬度测试仪 在医药行业中&#xff0c;软胶囊作为一种常见的药品剂型&#xff0c;因其独特的封装方式和便利性而受到广泛青睐。然而&#xff0c;软胶囊的质量问题也一直是制药企业关注的焦点。为了确保软胶囊的质量…

Qt窗口及QWidget类详解

QtWidgets 模块及窗口基本概念 QWidget 类是所有用户界面对象的基类,QWidget 及其子类是开发桌面应用的核心,这些类都位于 QtWidgets 模块内,注意:QtWidgets 是模块,QWidget 是类(少一个字母 t 和最后的 s)。 部件或窗口部件:Qt 把建立用户界面的元素称为窗口部件(widg…

国际数字影像产业园专场招聘会暨四川城市职业学院双选会成功举办

为了进一步强化校企合作&#xff0c;链接企业与高素质人才&#xff0c;促进毕业生实现高质量就业&#xff0c;2024年5月7日&#xff0c;“成就梦想 职通未来”国际数字影像产业园专场招聘会暨四川城市职业学院2024届毕业生校园双选会成功举行。 当天&#xff0c;国际数字影像产…

Redis: windows安装使用、本地启动、客户端ARDM

https://www.cnblogs.com/xiaoniandexigua/p/17419288.html https://www.cnblogs.com/lal520/p/17981824 5款实用的Redis可视化工具-CSDN博客 AnotherRedisDesktopManager: Github国内镜像&#xff0c;供下载使用&#xff0c;有问题可移步到下面GitHub链接

全国首创!成都代表:国际数字影像产业园运营中

国际数字影像产业园&#xff0c;这座充满活力和创意的产业园区&#xff0c;以其独特的“数字影像文创”新型发展模式&#xff0c;正逐渐成为成都文创产业的标杆。它不仅仅是一个简单的成都文创产业园区&#xff0c;更是一个将数字影像、文化演艺、会展节庆、数字产业、艺术培训…

适用于 iPhone 的最佳数据恢复应用程序

意外删除了重要iPhone文件&#xff0c;或尝试从损坏的手机访问文件&#xff1f;我们收集了适用于 iPhone 的最佳数据恢复应用程序&#xff0c;这可能会扭转局面。 iPhone 数据恢复应用程序是一种您希望永远不需要的工具&#xff0c;但如果您需要的话&#xff0c;您一定会很高兴…

Kubernetes(K8S) — 生产环境

生产环境 生产质量的 Kubernetes 集群需要规划和准备。 如果你的 Kubernetes 集群是用来运行关键负载的&#xff0c;该集群必须被配置为弹性的&#xff08;Resilient&#xff09;。 生产环境考量 需要考虑的因数 可用性&#xff1a;一个单机的 Kubernetes 学习环境 具有单点…