日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

leetcode 罗马数字转整数

發布時間:2023/12/1 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 leetcode 罗马数字转整数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

羅馬數字包含以下七種字符:I,V,X,L,C,D 和M。

字符數值
I1
V5
X10
L50
C100
D500
M1000

例如, 羅馬數字 2 寫做II ,即為兩個并列的 1。12 寫做XII ,即為 X +II 。 27 寫做 XXVII, 即為XX +V +II 。

通常情況下,羅馬數字中小的數字在大的數字的右邊。但也存在特例,例如 4 不寫做IIII,而是IV。數字 1 在數字 5 的左邊,所表示的數等于大數 5 減小數 1 得到的數值 4 。同樣地,數字 9 表示為IX。這個特殊的規則只適用于以下六種情況:

- `I` 可以放在 `V` (5) 和`X` (10) 的左邊,來表示 4 和 9。 - `X` 可以放在` L` (50) 和` C` (100) 的左邊,來表示 40 和 90。 - `C` 可以放在 `D `(500) 和 `M` (1000) 的左邊,來表示 400 和 900。

給定一個羅馬數字,將其轉換成整數。輸入確保在 1 到 3999 的范圍內。

示例 1:

輸入: "III"
輸出: 3

示例 2:

輸入: "IV"
輸出: 4

示例 3:

輸入: "IX"
輸出: 9

示例 4:

輸入: "LVIII"
輸出: 58
解釋: C = 100, L = 50, XXX = 30, III = 3.

示例 5:

輸入: "MCMXCIV"
輸出: 1994
解釋: M = 1000, CM = 900, XC = 90, IV = 4.

/*** @param {string} s* @return {number}*/ var romanToInt = function (s) {let charNum = {I: 1,V: 5,X: 10,L: 50,C: 100,D: 500,M: 1000,};let sum = 0;let len = s.length;for (let i = 0; i <= len; i++) {if (s[i] === "I") {if (s[i + 1] === "V" || s[i + 1] === "X") {sum += charNum[s[i + 1]] - charNum[s[i]];i++;continue;}} else if (s[i] === "X") {if (s[i + 1] === "L" || s[i + 1] === "C") {sum += charNum[s[i + 1]] - charNum[s[i]];i++;continue;}} else if (s[i] === "C") {if (s[i + 1] === "D" || s[i + 1] === "M") {sum += charNum[s[i + 1]] - charNum[s[i]];i++;continue;}}if (!s[i]) {break;}sum += charNum[s[i]];}return sum; };

實在是想不出有什么辦法能判斷結果,看了別人的沒想到這么簡單

/*** @param {string} s* @return {number}*/ var romanToInt = function (s) {let charNum = {I: 1,V: 5,X: 10,L: 50,C: 100,D: 500,M: 1000,};let sum = 0;let len = s.length;for (let i = 0; i < len; i++) {if(charNum[s[i]]<charNum[s[i+1]]){sum-=charNum[s[i]];}else {sum+=charNum[s[i]];}}return sum; };

轉載于:https://www.cnblogs.com/sbzy/p/9398186.html

總結

以上是生活随笔為你收集整理的leetcode 罗马数字转整数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。