Java实现 蓝桥杯 历届试题 错误票据
问题描述
某涉密单位下发了某种票据,并要在年终全部收回。
每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。
因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。
你的任务是通过编程,找出断号的ID和重号的ID。
假设断号不可能发生在最大和最小号。
输入格式
要求程序首先输入一个整数N(N<100)表示后面数据行数。
接着读入N行数据。
每行数据长度不等,是用空格分开的若干个(不大于100个)正整数(不大于100000),请注意行内和行末可能有多余的空格,你的程序需要能处理这些空格。
每个整数代表一个ID号。
输出格式
要求程序输出1行,含两个整数m n,用空格分隔。
其中,m表示断号ID,n表示重号ID
样例输入1
2
5 6 8 11 9
10 12 9
样例输出1
7 9
样例输入2
6
164 178 108 109 180 155 141 159 104 182 179 118 137 184 115 124 125 129 168 196
172 189 127 107 112 192 103 131 133 169 158
128 102 110 148 139 157 140 195 197
185 152 135 106 123 173 122 136 174 191 145 116 151 143 175 120 161 134 162 190
149 138 142 146 199 126 165 156 153 193 144 166 170 121 171 132 101 194 187 188
113 130 176 154 177 120 117 150 114 183 186 181 100 163 160 167 147 198 111 119
样例输出2
105 120
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int N = in.nextInt();
String[] A = new String[N];
in.nextLine();
for(int i = 0;i < N;i++)
A[i] = in.nextLine();
ArrayList<Integer> list = new ArrayList<Integer>();
for(int i = 0;i < N;i++) {
String[] temp = A[i].split(" ");
for(int j = 0;j < temp.length;j++)
list.add(Integer.valueOf(temp[j]));
}
Collections.sort(list);
int m = 0, n = 0;
for(int i = 1;i < list.size();i++) {
if(list.get(i) - list.get(i - 1) == 2)
m = (list.get(i) + list.get(i - 1)) / 2;
else if(list.get(i) - list.get(i - 1) == 0)
n = list.get(i);
}
System.out.println(m+" "+n);
}
}
相关文章
- 基础篇:java GC 总结,建议收藏
- Caused by: java.lang.IllegalStateException: 由于StackOverflower错误,无法完成对web应用程序[/lib]的批注的扫描。可能的根本原因包...
- java二维数组试题_Java二维数组及习题总结
- java教程安装_java 安装教程
- java工程师_Java工程师是青春饭吗?[通俗易懂]
- java启动器_JAVA基础:Java 启动器如何查找类
- java的三种工厂模式「建议收藏」
- Java后台接收参数出现java.lang.Integer cannot be cast to java.lang.Double错误(已解决)[通俗易懂]
- db4o java,db4o Java版性能测试评估
- java字符串转换为json对象6_Json对象与Json字符串的转化、JSON字符串与Java对象的转换…
- 用递归实现数组求和的函数_JAVA数组递归排序
- Java cloneable_java浅克隆和深克隆
- 【错误记录】生成 Java 文档错误 ( Xxx.java:xx: 错误: 编码GBK的不可映射字符 )
- 【错误记录】Java 中 ArrayList 排序 ( 使用 Comparator 接口时注意 compare 返回值是 -1 和 +1 )
- Java学习笔记之三十详解Java单例(Singleton)模式编程语言
- java邮件发送qq和163邮箱互发实例和错误介绍详解编程语言
- Java中关于String类型你不知道的几个问题详解编程语言
- java 标准输出与标准错误 out与 err 区别 用法 联系 java中的out与err区别 System.out和System.err的区别 System.out.println和System.err.println的区别 Java重定向System.out和System.err详解编程语言
- java利用做的csv文件解析为list对象详解编程语言
- 持久化Java持久化技术与Redis高级应用(redis高级之java)
- 时间解决Redis Java客户端设置过期时间的方法(redisjava过期)
- Linux系统如何配置Java?(linux下配置java)
- Java操作Redis实现数据快速存取(java访问redis)
- Learn How to Connect Your Java Application with MongoDB in Just a Few Steps(java连接mongodb)
- 使用Java连接MySQL数据库的具体操作方法(java连接mysql代码)
- 使用Java程序执行Linux指令:实现自动化操作(java执行linux命令)
- Java 离开 Oracle,新的旅程即将开始(java没有Oracle)
- Oracle数据库中运行Java程序的简易指南(oracle中写java)
- 利用Redis锁实现Java程序并发控制(redis锁java实现)
- java中利用正则表达式提取()内内容
- java循环练习的简单代码实例
- java利用htmlparser获取html中想要的代码具体实现
- java使用iterator遍历指定目录示例分享