题解 | #合并表记录#重点在排序,利用lambda表达式排序

合并表记录

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

import java.io.*;
import java.util.*;
import java.util.Map;

public class Main{
    public static void main(String[] args) throws Exception{
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        String str;
        while((str = bf.readLine()) != null){
            int num = Integer.valueOf(str);
            Map<Integer,Integer> map = new HashMap<>();
            for(int i = 0;i < num;i++){
                String strnum = bf.readLine();
                String[] word = strnum.split(" ");
                int num1 = Integer.valueOf(word[0]);
                int num2 = Integer.valueOf(word[1]);                          
                map.put(num1,map.getOrDefault(num1,0) + Integer.valueOf(word[1]));
            }
            ArrayList<Map.Entry<Integer, Integer>> list = new ArrayList<>(map.entrySet());
            Collections.sort(list, (a, b) -> a.getKey() - b.getKey());
            for (Map.Entry<Integer, Integer> entry : list) {
                System.out.println(entry.getKey() + " " + entry.getValue());
            }
        }
    }
}
全部评论

相关推荐

owwhy:难,技术栈在嵌入式这块显得非常浅,并且简历有大问题。教育经历浓缩成两行就行了,写什么主修课程,说的不好听这块没人在意,自我评价删了,项目写详细点,最终简历缩成一页。相关技能怎么说呢,有点差了,还写成这么多行
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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