【力扣】罗马数字转整数,哈希集合+模拟

罗马数字转整数原题地址

方法一:模拟

罗马数字是字符串,其中每个字符都对应一个整数值,为了方便查找,可以预先把这种对应关系存储到哈希表中。

遍历字符串,对于每个字符,

  1. 如果该字符不是最右边的字符,且它右边的字符对应的整数值更大一些,就要减去该字符对应的整数值。
  2. 否则就加上该字符对应的整数值。
// 方法一:模拟
class Solution {unordered_map<char, int> symbolValues = {{'I', 1},{'V', 5},{'X', 10},{'L', 50},{'C', 100},{'D', 500},{'M', 1000}};
public:int romanToInt(string s) {int ans = 0;int n = s.size();for (int i = 0; i < n; ++i){int val = symbolValues[s[i]];// 若右边的数更大,就-val,否则+valif (i + 1 < n && val < symbolValues[s[i + 1]]){ans -= val;}else{ans += val;}}return ans;}
};

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

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

相关文章

LeetCode、1137. 第 N 个泰波那契数【简单,动态规划】

文章目录 前言LeetCode、1137. 第 N 个泰波那契数【简单&#xff0c;动态规划】题目与分类思路一维动态规划 资料获取 前言 博主介绍&#xff1a;✌目前全网粉丝2W&#xff0c;csdn博客专家、Java领域优质创作者&#xff0c;博客之星、阿里云平台优质作者、专注于Java后端技术…

2024/2/5总结

微信小程序 监听对象中所有属性的变化 如果某个对象中需要被监听的属性太多&#xff0c;为了方便&#xff0c;可以使用 通配符 ** 来监听 对象中所有属性的变化 什么是纯数字字段 概念&#xff1a;纯数字字段指的是那些不用于界面渲染的 data 字段。 好处&#xff1a;提升界面…

敏捷开发中的用户故事

用户故事 drawio是一款强大的图表绘制软件&#xff0c;支持在线云端版本以及windows, macOS, linux安装版。 如果想在线直接使用&#xff0c;则直接输入网址drawon.cn或者使用drawon(桌案), drawon.cn内部完整的集成了drawio的所有功能&#xff0c;并实现了云端存储&#xff0c…

transformers重要组件(模型与分词器)

1、模型&#xff1a; from transformers import AutoModelcheckpoint "distilbert-base-uncased-finetuned-sst-2-english" model AutoModel.from_pretrained(checkpoint) 除了像之前使用 AutoModel 根据 checkpoint 自动加载模型以外&#xff0c;我们也可以直接…

深度学习的新进展:从模型架构到应用领域的创新

引言&#xff1a; 深度学习作为人工智能领域的重要分支&#xff0c;近年来取得了令人瞩目的进展。通过模拟人类大脑的学习过程&#xff0c;深度学习模型能够从大量数据中提取特征、识别模式、进行分类和预测等任务。本文将探讨深度学习在模型架构、算法优化以及应用领域的新进展…

Python HttpServer 之 简单快速搭建本地服务器,并且使用 requests 测试访问下载服务器文件

Python HttpServer 之 搭建本地服务器,并且使用requests访问下载服务器文件测试 目录 Python HttpServer 之 搭建本地服务器,并且使用requests访问下载服务器文件测试

如何利用边缘计算网关进行机床数据采集,以提高数据采集的效率和准确性-天拓四方

边缘计算网关集成了数据采集、处理和传输功能的嵌入式设备。它位于传感器和执行器组成的设备层与云计算平台之间&#xff0c;能够实时处理和响应本地设备的数据请求&#xff0c;减轻云平台的压力&#xff0c;提高数据处理的速度和效率。同时&#xff0c;边缘计算网关还可以将处…

跟着cherno手搓游戏引擎【21】shaderLibrary(shader管理类)

前置&#xff1a; ytpch.h&#xff1a; #pragma once #include<iostream> #include<memory> #include<utility> #include<algorithm> #include<functional> #include<string> #include<vector> #include<unordered_map> #in…

ROS笔记一:工作空间和功能包

目录 工作空间 如何创建工作空间&#xff1a; 编译工作空间 设置环境变量 功能包 创建功能包 CMakeLists.txt package.xml 工作空间 ROS的工作空间是用来存放工程文件代码的文件夹 ROS的开发依赖于工作空间&#xff0c;包括编写代码、编译等都是在工作空间下进行的 工作空…

如何在Termux中使用Hexo结合内网穿透工具实现远程访问本地博客站点

文章目录 前言 1.安装 Hexo2.安装cpolar3.远程访问4.固定公网地址 前言 Hexo 是一个用 Nodejs 编写的快速、简洁且高效的博客框架。Hexo 使用 Markdown 解析文章&#xff0c;在几秒内&#xff0c;即可利用靓丽的主题生成静态网页。 下面介绍在Termux中安装个人hexo博客并结合…

GO语言集成开发 JetBrains GoLand 2023 中文

JetBrains GoLand 2023是一款专为Go语言开发者打造的集成开发环境&#xff08;IDE&#xff09;。它基于IntelliJ IDEA平台&#xff0c;提供了丰富的功能和工具&#xff0c;旨在提高开发效率和质量。GoLand 2023具备强大的Go语言支持&#xff0c;包括语法高亮、自动补全、代码提…

RPA财务机器人之UiPath实战 - 自动化操作Excel进行财务数据汇总与分析之流程建立与数据读取、处理、汇总、分析

一、案例介绍&#xff1a; A公司共有13个开在不同银行的帐户&#xff0c;分别用于不同的业务分部或地区分部收付款。公司总部为了核算每月的收支情况&#xff0c;查看银行在哪个月交易量频繁&#xff0c;需要每月汇总各个银行的帐户借方和贷方金额&#xff0c;并将其净收支&am…

【PyTorch】实现迁移学习框架DaNN

文章目录 前言代码实现1、导入数据库关于torch.manual_seed(1)2、参数设置3、数据导入4、定义MMD损失5、定义训练函数5.1 nn.CrossEntropyLoss()5.2 .detach()5.3 .size VS .shape5.4 .to(DEVICE)5.5 .max()5.6 optimizer.zero_grad()

Qt中设置全局字体

在Qt中设置全局字体通常涉及两个步骤&#xff1a; 首先加载所需的字体然后将其应用为应用程序范围内的默认字体。 这可以通过在应用程序初始化时设置 QApplication 的字体属性来实现。 以下是一个示例代码&#xff0c;展示了如何设置全局字体&#xff1a; #include <QAp…

unity 增加系统时间显示、FPS帧率、ms延迟

代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;using UnityEngine;public class Frame : MonoBehaviour {// 记录帧数private int _frame;// 上一次计算帧率的时间private float _lastTime;// 平…

小程序自定义组件扩展功能介绍

为了更好定制自定义组件的功能&#xff0c;可以使用自定义组件扩展机制。 扩展后的效果 为了更好地理解扩展后的效果&#xff0c;先举一个例子&#xff1a; // behavior.js export default Behavior({definitionFilter(defFields) {defFields.data.from behavior;}, });// c…

比值计算 - 荣耀机试真题题解 ( 第1题 100 分)

系统&#xff1a;牛客网 考试时长&#xff1a; 90分钟 试卷总分&#xff1a; 300分 &#xff08;总共 2 题&#xff09; 题目描述 已知差值 x 10 ∗ l o g 10 ( S / N ) − 10 ∗ l o g 10 ( S / ( N k ∗ N ) ) x10*log10(S/N)-10*log10(S/(Nk*N)) x10∗log10(S/N)−10∗lo…

docker 简单项目

要将服务器端口映射到容器端口&#xff0c;你可以使用 Docker 命令的 -p 选项。以下是基本的步骤&#xff1a; 1. **拉取镜像&#xff1a;** 在服务器上运行以下命令拉取你想要的 Docker 镜像&#xff0c;例如 Nginx&#xff1a; bash docker pull nginx 2. **运行容器…

MATLAB Fundamentals>>>Centering and Scaling

MATLAB Fundamentals>Common Data Analysis Techniques>Polynomial Fitting>Centering and Scaling 数据导入 This code sets up the activity. yr 2000:2007 penguins [5.49 7.03 7.73 7.70 9.29 9.21 11.89 10.85] 附加练习 How does the model look?…

MongoDB 字段中数据类型不一致序列化异常排查与处理

MongoDB 字段中数据类型不一致序列化异常排查与处理 背景如下&#xff0c;因为项目迁移愿意&#xff0c;一个使用Mongodb的业务拥有C#和Java两组Api。Java Api开发和测试都很顺利。上线一段时间后&#xff0c;客服反馈记录都不见了。查看数据库发现&#xff0c;时间字段拥有两…