题解 | #挖掘机技术哪家强(20)#

挖掘机技术哪家强(20)

http://www.nowcoder.com/questionTerminal/8ec60eb06fad461eb82ff30562eedc31

import java.util.*;
public class Main {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        Map<Integer,Integer> map = new HashMap<>();
        int max = -1;
        int max_num = -1;
        for(int i = 0 ; i < n ; i++) {
            int num = sc.nextInt();
            int score = sc.nextInt();
            if(map.containsKey(num)) {
                map.put(num, map.get(num) + score);
            } else {
                map.put(num, score);
            }
            if(max < map.get(num)) {
                max = map.get(num);
                max_num = num;
            }
        }
        System.out.println(max_num + " " + max);
    }
}

以上代码,在牛客网可以通过,但是在官网只能部分正确。因为官网限制在200ms alt alt 目前没想到改进方法,以后想到了再来改进

全部评论
可以拿数组代替使用,创建一个100001大小的数组,拿输入的编号当下标,累加起相同编号的分数,最后输出最大分数
点赞 回复 分享
发布于 2023-03-20 17:22 江西

相关推荐

点赞 评论 收藏
分享
爱睡觉的冰箱哥:学历不够啊兄弟,分析师都是9硕✌🏻咱搞不过他们滴
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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