题解 | #牛牛的罗马时代节日#

牛牛的罗马时代节日

https://www.nowcoder.com/practice/97447e046b704ffda3f51281bd7e296b

知识点:哈希表

思路:

首先定义了一个存储罗马数字与整数之间对应关系的哈希表mp,使用unordered_map来实现。然后,函数通过循环遍历字符串数组中的每个罗马数字:

  • 在每次迭代中,调用辅助函数get来将字符串转换为对应的整数值,并将其累加到结果res中。

辅助函数get用于将罗马数字字符串转换为整数。函数遍历字符串中的每个字符,依次进行如下操作:

  • 首先,它判断当前字符是否是第一个字符或者当前字符对应的整数值小于等于上一个字符对应的整数值。如果是,则将该字符对应的整数值加到结果res中。
  • 否则,当前字符对应的整数值大于上一个字符对应的整数值。在这种情况下,需要减去上一个字符对应的整数值并加上当前字符对应的整数值,以计算正确的整数值。

最后,函数返回计算得到的总和res

编程语言:java

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param cowsRomanNumeral string字符串一维数组
     * @return int整型
     */
    static HashMap<Character, Integer> mp = new HashMap<>();

    static {
        mp.put('I', 1);
        mp.put('V', 5);
        mp.put('X', 10);
        mp.put('L', 50);
        mp.put('C', 100);
        mp.put('D', 500);
        mp.put('M', 1000);
    }

    public  int sumOfRomanNumerals(String[] cowsRomanNumeral) {
        int n = cowsRomanNumeral.length;
        int res = 0;
        for (String s : cowsRomanNumeral) {
            res += get(s);
        }
        return res;
    }

    public static int get(String s) {
        int res = 0;
        for (int i = 0; i < s.length(); i++) {
            if (i == 0 || mp.get(s.charAt(i)) <= mp.get(s.charAt(i - 1))) {
                res += mp.get(s.charAt(i));
            } else {
                res -= mp.get(s.charAt(i - 1));
                res += mp.get(s.charAt(i)) - mp.get(s.charAt(i - 1));
            }
        }
        return res;
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
Ryan188:我觉得你简历最核心的问题就是太大众化。 你要有一个认知就是,如果你是面试官,你是HR,其实他们每天都会收到非常多大量重复的像你这种简历。 就是说你的项目不是一个真实的上线的项目,可能是从网上学习而来的,或者是直接copy别人的项目,没有新意,没有展现出你自己对技术的思考,而且你的学历也不占优,自然而然就很难有人去选择你。 所以要做的实际上是差异化方向的工作,也就是“给我一个选择你的理由”,比如最近很火的ai,你可以写一个ai相关项目比如问答应用或者mcp编写或者agent搭建,需要你先花点时间学习,34天吧,展现你对这方面相较于其他人特有的思考; 或者写相关技术博客输出一些技术内容,有具体可以量化的成果等等去增加你的竞争力。 但以上这些都是后话,我去年在你这个时候也是没人理我,咱们双非学历也没实习,难找也正常,我当时整个3月份都没人鸟我,直到有个新招的岗位,很缺人很急,流程很快,所以我一下子进去了,所以运气方面也很重要,需要你一直坚持喝复盘,直到看到光明,加油兄弟
简历被挂麻了,求建议
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务