题解 | #合并表记录#
合并表记录
https://www.nowcoder.com/practice/de044e89123f4a7482bd2b214a685201
- TreeMap会自动按照key的升序排序
- map遍历:
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
int key = entry.getKey();
int value = entry.getValue();
}
import java.util.TreeMap;
import java.util.Map;
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Map<Integer, Integer> map = new TreeMap<Integer, Integer>();
//行数
int n = sc.nextInt();
//接收数据
String[] inputs = new String[n + 1];
// System.out.println("输入的行数:"+n);
for (int i = 0; i <= n; i++) {
//接收键值对
inputs[i] = sc.nextLine();
if (inputs[i] != null && inputs[i].length() != 0) {
int pos = inputs[i].indexOf(" ");
int key = Integer.parseInt(inputs[i].substring(0, pos));
int value = Integer.parseInt(inputs[i].substring(pos + 1));
if (map.get(key) != null) {
int preValue = map.get(key);
map.put(key, value + preValue);
} else {
map.put(key, value);
}
}
}
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
int key = entry.getKey();
int value = entry.getValue();
System.out.println(key + " " + value);
}
}
}