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

#力扣:13. 罗马数字转整数@FDDLC

13. 罗马数字转整数

一、Java

import java.util.HashMap;class Solution {public int romanToInt(String s) {HashMap<Character, Integer> m = new HashMap<>() {{put('I', 1);put('V', 5);put('X', 10);put('L', 50);put('C', 100);put('D', 500);put('M', 1000);}};char[] a = s.toCharArray();int sum = m.get(a[0]);for (int i = 1; i < a.length; i++) {sum += m.get(a[i]);if (m.get(a[i - 1]) < m.get(a[i])) sum -= m.get(a[i - 1]) * 2;}return sum;}
}

二、C++

#include <string>
#include <unordered_map>using namespace std;class Solution {
public:int romanToInt(string s) {unordered_map<char, int> m = {{'I', 1},{'V', 5},{'X', 10},{'L', 50},{'C', 100},{'D', 500},{'M', 1000}};int sum = m[s[0]];for (int i = 1; i < s.length(); i++) {sum += m[s[i]];if (m[s[i - 1]] < m[s[i]]) sum -= m[s[i - 1]] * 2;}return sum;}
};

三、Python

class Solution:def romanToInt(self, s: str) -> int:m = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}sum = m[s[0]]for i in range(1, len(s)):sum += m[s[i]]if m[s[i - 1]] < m[s[i]]:sum -= m[s[i - 1]] * 2return sum

四、JavaScript

var romanToInt = function (s) {let m = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000};let sum = m[s[0]];for (i = 1; i < s.length; i++) {sum += m[s[i]];if (m[s[i - 1]] < m[s[i]])sum -= m[s[i - 1]] * 2;}return sum;
};

五、Go

package mainfunc romanToInt(s string) int {m := map[uint8]int{'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}sum := m[s[0]]for i := 1; i < len(s); i++ {sum += m[s[i]]if m[s[i-1]] < m[s[i]] {sum -= m[s[i-1]] * 2}}return sum
}

http://www.lryc.cn/news/184533.html

相关文章:

  • React18入门(第一篇)——JSX、TSX语法详解
  • 【计算机基础知识】字符的编码表示
  • 【面试题精讲】Java字符型常量和字符串常量的区别?
  • 【Vue面试题六】为什么Vue中的 v-if 和 v-for 不建议一起用?
  • leetCode 674. 最长连续递增序列 动态规划 / 贪心策略
  • 数据中台实战(11)-数据中台的数据安全解决方案
  • 林沛满-TCP之在途字节数
  • HTTPS 加密工作过程
  • 校招秋招,性格和职业有关系吗?
  • 网络和系统操作命令
  • 刷穿力扣(1~30)
  • 栈和队列的基本操作
  • 变压器绕组断股往往导致直流电阻不平衡率超标
  • stack和queque
  • 信息学 学习/复习 抽签器(附源码)
  • 基于LADRC自抗扰控制的VSG三相逆变器预同步并网控制策略(Simulink仿真实现)
  • [0xGame 2023] week1
  • Matlab矩阵——矩阵行列互换
  • OpenMesh 网格面片随机赋色
  • SpringSecurity源码学习一:过滤器执行原理
  • 8.2 JUC - 4.Semaphore
  • 前端try和catch
  • Unity可视化Shader工具ASE介绍——2、ASE的Shader创建和输入输出
  • 目标检测算法改进系列之Backbone替换为Swin Transformer
  • 【技术干货】如何通过 DP 实现支持经典蓝牙的联网单品设备与 App 配对
  • 【Unity Build-In管线的SurfaceShader剖析_PBS光照函数】
  • thinkphp5实现ajax图片上传,压缩保存到服务器
  • 王道考研计算机网络——传输层
  • 08 集群参数配置(下)
  • mac文件为什么不能拖进U盘?