解题思路:
1. 重号:使用Map存储ID,判断重复key,即可得到重复ID
2. 断号:先得到所有ID序列的最小值和最大值,循环判断不存在于Map中的ID,即可得到断号
注意事项:
参考代码:
import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class C1458 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { int m = 0, n = 0; int N = sc.nextInt(); sc.nextLine(); Map<Integer, Integer> map = new HashMap<Integer, Integer>(); int min = Integer.MAX_VALUE, max = 0, num; for(int i = 0; i < N; i++){ String[] strs = sc.nextLine().split("[ ]+"); for(String str : strs){ num = Integer.valueOf(str); if(map.containsKey(num)) //重号ID n = num; else map.put(num, num); if(num < min) min = num; if(num > max) max = num; } } for(int i = min; i <= max; i++){ if(!map.containsKey(i)){//断号 m = i; break; } } System.out.printf("%d %d", m, n); } sc.close(); } }
0.0分
4 人评分
你的开发任务 (C++代码)写到一半,等有心情回来补全浏览:923 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:715 |
C二级辅导-求偶数和 (C语言代码)浏览:659 |
点我有惊喜!你懂得!浏览:1274 |
C二级辅导-计负均正 (C语言代码)浏览:556 |
汽水瓶 (C语言代码)浏览:764 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:674 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:790 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:632 |
C语言程序设计教程(第三版)课后习题6.6 (C语言代码)浏览:626 |