题解 | #牛牛的罗马时代节日#
牛牛的罗马时代节日
https://www.nowcoder.com/practice/97447e046b704ffda3f51281bd7e296b
题目考察的知识点
考察哈希算法
题目解答方法的文字分析
首先使用哈希表存储对应的转换关系,随后遍历给定的数组计算加和即可
本题解析所用的编程语言
使用Java回答
完整且正确的编程代码
import java.util.*; public class Solution { public int sumOfRomanNumerals(String[] cowsRomanNumeral) { Map<Character, Integer> map = new HashMap<>(); map.put('I', 1); map.put('V', 5); map.put('X', 10); map.put('L', 50); map.put('C', 100); map.put('D', 500); map.put('M', 1000); int sum = 0; for (String cow : cowsRomanNumeral) { int value = 0; for (int i = 0; i < cow.length(); i++) { int currentValue = map.get(cow.charAt(i)); if (i > 0 && currentValue > map.get(cow.charAt(i - 1))) { value += currentValue - 2 * map.get(cow.charAt(i - 1)); } else { value += currentValue; } } sum += value; } return sum; } }