力扣13 罗马数字转整数

题目


知识点

unordered_map------链接


思路

左边比右边大用加法,左边比右边小用减法


题解

unordered_map私有化

复制代码
class Solution {
private:
unordered_map<char,int> symbolValue = {
    {'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.length();
        for(int i = 0; i<n ;i++){
            int value = symbolValue[s[i]];
            if(i<n-1 && value<symbolValue[s[i+1]]){
                ans = ans - value;
            }else{
                ans = ans + value;
            }
        }
        return ans;
    }
};
相关推荐
动词ing24 分钟前
【题目练习】算法 组合总和||
算法
wuminyu25 分钟前
ForkJoinPool窃取线程在扫描其他WorkQueue时的随机采样算法与Phase线程挂起唤醒机制解析
java·linux·c语言·jvm·c++
longlongzihan30 分钟前
链表找环:Floyd 判圈算法(LeetCode 141 & 142 )
c++·算法·leetcode·链表
专业程序开发源42 分钟前
flask家电故障预测系统92491-计算机课程设计/毕业设计
vscode·python·sql·算法·flask·课程设计
liulilittle42 分钟前
Linux 下 select 测试函数
linux·服务器·网络·数据库·c++·select·c
Logic1011 小时前
C语言/数据结构欧几里得算法题解:长方形切割最大正方形——贪心划分计数
c语言·数据结构·算法·贪心算法·时间复杂度·空间复杂度·欧几里得算法
yi0111 小时前
LeetCode 643. 子数组最大平均数 I|从暴力枚举到滑动窗口
人工智能·笔记·python·算法·leetcode·滑动窗口
无忧.芙桃1 小时前
C++语言原理与实践(十二):list类的底层实现
c++·windows·list
沫璃染墨2 小时前
《Linux工程实践篇(二):线程池实战——从线程安全单例到完整源码实现》
linux·开发语言·c++·单例模式·设计模式·系统架构
极光通讯2 小时前
服务器内存来料检验(IQC)实操:批次追溯、外观判定与上机验证
java·服务器·算法