当前位置: 首页 > news >正文

leetcode13.罗马数字转整数

 

 遍历,下一个值不大于当前值就加上当前值,否则就减去当前值

class Solution {
    public int romanToInt(String s) {
        Map<Character, Integer> map = Map.of(
                'I', 1,
                'V', 5,
                'X', 10,
                'L', 50,
                'C', 100,
                'D', 500,
                'M', 1000
        );
        int sum = 0;
        for (int i = 0; i < s.length(); i++) {
            Integer curVal = map.get(s.charAt(i));
            if (i + 1 < s.length() && curVal < map.get(s.charAt(i + 1))) {
                sum -= curVal;
            } else {
                sum += curVal;
            }
        }
        return sum;
    }
}

http://www.dtcms.com/a/118628.html

相关文章:

  • 技术面试通关秘籍:常见问题解析+实战案例+避坑指南
  • Java 容器源码分析
  • Java全栈项目--校园快递管理与配送系统(5)
  • Wincc项目被锁定无法打开
  • 红宝书第三十二讲:零基础学会模块打包器:Webpack、Parcel、Rollup
  • 解决.net接口防暴力调用问题
  • 零基础教程:Windows电脑安装Linux系统(双系统/虚拟机)全攻略
  • 特权FPGA之Johnson移位
  • node-modules-inspector 使用以及 node_modules可视化 依赖关联关系快速分析
  • Java 为什么不支持多继承?
  • 多类型医疗自助终端智能化升级路径(代码版.下)
  • C++类与对象进阶知识深度解析
  • 基于大模型的ALS预测与手术优化系统技术方案
  • 用MSYS2在windows下编译gsl-2.8库用于vs2022调用
  • 打破系统壁垒:CRM、ERP、OA一体化如何重塑企业竞争力
  • 域名系统DNS
  • 直流减速电机控制实验:Simulink应用层开发(3)
  • Ansible:roles角色
  • 物联网平台支持在水务行业使用
  • React 和 JSX 中,这些符号 (=>, <, ? :)的用法
  • 简历EasyExcel相关
  • 【Java中级】11章、枚举 - java引用数据类型,枚举介绍、快速入门,了解枚举类的基本使用方式【1】
  • 基于webGis绘制点、面
  • Python标准库os模块完全指南
  • 安装node.js
  • 1.6-抓包技术(Burp Suite\Yakit抓包\Web、APP、小程序)
  • 蓝桥杯2022年第十三届省赛真题-统计子矩阵
  • ruby基础语法
  • shell脚本 - Linux定时温度监控-软硬件检测 - 服务器温度监控 - 写入日志
  • [Linux]从零开始的ARM Linux交叉编译与.so文件链接教程