题解 | #合并表记录#

合并表记录

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

import java.util.Scanner;
import java.util.*;


// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        Map<Integer,Integer> imputs = new HashMap<>();
        int flag = 0;
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            if(flag == 0){
                flag = in.nextInt();
                continue;
            }
            flag -- ;
            int a = in.nextInt();
            int b = in.nextInt();
            Integer getB = imputs.get(a);
            if(getB == null){
                imputs.put(a,b);
            }else{
                int r = getB + b;
                imputs.put(a,r);
            }
           if (flag == 0){
                Set<Integer> keys = imputs.keySet();
                List<Integer> keyList = new ArrayList<>(keys);
                Collections.sort(keyList);
                for (Integer e:         keyList) {
                    System.out.println(e+" "+ imputs.get(e));
                }
            }

        }
    }
}

写的有点繁琐了,喜欢在idea上编辑好在粘贴进来。

全部评论

相关推荐

ArisRobert:统一解释一下,第4点的意思是,公司按需通知员工,没被通知到的员工是没法去上班的,所以只要没被通知到,就自动离职。就是一种比较抽象的裁员。
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务