首頁歷史 > 正文

每日刷題|羅馬數字轉整數

2022-02-10由 炸魚程式猿 發表于 歷史

題目如下:

每日刷題|羅馬數字轉整數

題目描述1

每日刷題|羅馬數字轉整數

題目描述2

每日刷題|羅馬數字轉整數

題目描述3

與上一題相反,這一題是要將羅馬數字轉為整數,相對來說更簡單一些,將單個的羅馬數字轉為數字,然後相加即可。

程式碼如下:

import java。util。HashMap;import java。util。Map;class Solution { public int romanToInt(String s) { int[] nums = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1}; String[] romans = {“M”, “CM”, “D”, “CD”, “C”, “XC”, “L”, “XL”, “X”, “IX”, “V”, “IV”, “I”}; Map map = new HashMap<>(); for (int i = 0; i < nums。length; i++) { map。put(romans[i], nums[i]); } int res = 0; for (int j = 0; j < s。length(); j++) { String current = String。valueOf(s。charAt(j)); if (j + 1 < s。length()) { String nextStr = String。valueOf(s。charAt(j + 1)); // 判斷一下兩個組合起來能不能取到值 if (map。containsKey(current + nextStr)) { current = current + nextStr; j++; } } res += map。get(current); } return res; }}

執行結果:

每日刷題|羅馬數字轉整數

執行透過

奶思~

頂部