013.罗马数字转整数——二哥的 LeetCode 刷题笔记
鲁迅说过,三天不刷 LeetCode,手里发痒,今天继续来刷《二哥的 LeetCode 刷题笔记》吧。
题意
给你一个罗马数字,要求你给出它相应的整数。
至于罗马数字是什么,第 12 题已经解释过了,这里就不再赘述。
难度
简单
示例
示例 1:
输入: s = "III"
输出: 3
示例 2:
输入: s = "IV"
输出: 4
示例 3:
输入: s = "IX"
输出: 9
示例 4:
输入: s = "LVIII"
输出: 58
解释: L = 50, V= 5, III = 3.
示例 5:
输入: s = "MCMXCIV"
输出: 1994
解释: M = 1000, CM = 900, XC = 90, IV = 4.
分析 1
这道题目和第 12 题是相反的,第 12 题是整数转罗马数字,这道题目是罗马数字转整数。
我们可以先把罗马数字和整数的对应关系列出来:
| 罗马数字 | 整数 |
|---|---|
| I | 1 |
| V | 5 |
| X | 10 |
| L | 50 |
| C | 100 |
| D | 500 |
| M | 1000 |
我们可以发现,罗马数字和整数的对应关系是一一对应的,所以我们可以把这些对应关系放到一个 Map 中,然后遍历罗马数字,依次取出对应的整数,然后相加即可。
需要注意的是,如果一个较小的数字在较大的数字前面,比如 IV、IX、XL、XC、C...
已加入星球,可直接知识星球授权登录
二哥编程星球目前包含:
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
1. 微信扫右侧的优惠券加入知识星球
2. 解锁星球的实战项目教程和源码: 项目源码+教程获取
真诚点赞 诚不我欺
回复