题解 | #合并表记录#
合并表记录
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)); } }