题解 | #合并表记录#

合并表记录

http://www.nowcoder.com/practice/de044e89123f4a7482bd2b214a685201

看到题目中要求的键值对想到Map数据结构
看到按照key升序输出想到TreeMap数据结构
这里的一个小技巧是使用Map的getOrDefault(key, defaultVal)方法,这个方法的作用是当map中没有指定的Key时,返回defaultVal,有指定的key时,返回该key对应的val值。

import java.util.Scanner;
import java.util.TreeMap;

public class Main{

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        TreeMap<Integer, Integer> tm = new TreeMap<>();
        int n = sc.nextInt();
        for (int i = 0; i < n; i++) {
            int k = sc.nextInt();
            int v = sc.nextInt();
            tm.put(k, tm.getOrDefault(k, 0) + v);
        }
        for (Integer i : tm.keySet()) {
            System.out.println(i + " " + tm.get(i));
        }
    }
全部评论

相关推荐

昨天 11:21
复旦大学 Java
点赞 评论 收藏
分享
StephenZ_:我9月份找的第一段实习也是遇到这种骗子公司了,问他后端有多少人和我说7个正职,进去一看只有一个后端剩下的都是产品前端算法(没错甚至还有算法)。还是某制造业中大厂,我离职的时候还阴阳怪气我
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

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