题解 | 合并表记录

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

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        
        // 读取记录的数量
        while (in.hasNextInt()) { 
            int n = in.nextInt(); // 记录数
            TreeMap<Integer, Integer> map = new TreeMap<>(); // 用来存储合并后的结果
            
            for (int i = 0; i < n; i++) {
                int key = in.nextInt();  // 索引
                int value = in.nextInt(); // 对应的数值


                // 合并相同索引的数值
                map.put(key, map.getOrDefault(key, 0) + value);
            }

            // 输出合并后的结果,按索引升序输出
            for (Integer key : map.keySet()) {
                System.out.println(key + " " + map.get(key));
            }
        }
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务