题解 | #合并表记录#

合并表记录

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

import java.util.Scanner;
import java.util.HashMap;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int account = sc.nextInt();
        HashMap<Integer, Integer> map = new HashMap<>();//用hashMap存储不说了
        sc.nextLine();
        for (int i = 0; i < account; i++) {
            String str = sc.nextLine();
            String[] ary = str.split(" ");
            int k = Integer.parseInt(ary[0]);
            int v = Integer.parseInt(ary[1]);
            if (map.containsKey(k)) {//当重复时,累加
                map.get(k);
                map.replace(k, map.get(k) + v);//累加操作
            } else
                map.put(k, v);
        }
        map.keySet().stream().sorted().forEach(//主要是这里,把key的集合取出来排序再遍历输出
            k -> System.out.println(k + " " + map.get(k))
        );
    }
}

全部评论

相关推荐

11-13 20:16
已编辑
厦门理工学院 软件测试
专业嗎喽:硕佬,把学校背景放后面几段,学校背景双非还学院,让人看了就不想往下看。 把实习经历和个人奖项放前面,用数字化简述自己实习的成果和掌握的技能,比如负责项目一次通过率90%,曾4次发现项目潜在问题风险为公司减少损失等等
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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