微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

LeetCode, 13. 罗马数字转整数, TypeScript题解.

在这里插入图片描述

题解:

  • 将字符串的罗马数字转换数字, 阅读题目, 发现一些特殊值, 这是有限考虑的,然后可以发现题目的已知条件是一个 映射表, 直接上map,
  • 根据给的字符串, 去除特殊的情况, 字符串修改, 返回答案

代码

function romanToInt(s: string): number {
  let result: number = 0
  let map: Map<string, number> = new Map()
  map.set('I', 1)
  map.set('V', 5)
  map.set('X', 10)
  map.set('L', 50)
  map.set('C', 100)
  map.set('D', 500)
  map.set('M', 1000)
  map.set('a', 4)
  map.set('b', 9)
  map.set('c', 40)
  map.set('d', 90)
  map.set('e', 400)
  map.set('f', 900)


  s = s.replace('IV', "a").replace('IX', 'b').replace('XL', 'c').replace('XC', 'd').replace('CD', 'e').replace('CM', 'f')


  for(let i =0 ;i<s.length; i++){
    result += map.get(s[i]) as number
  }

  return result
};

// console.log(romanToInt("IV"))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐