题解 1458: 蓝桥杯2013年第四届真题-错误票据

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

蓝桥杯2013年第四届真题-错误票据

解题思路:首先,Scanner是一个扫描器,它扫描数据都是去内存中一块缓冲区中进行扫描并读入数据的,而我们在控制台中输入的数据也都是被先存入缓冲区中等待扫描器的扫描读取。这个扫描器在扫描过程中判断停止的依据就是“空白符”,空格啊,回车啊什么的都算做是空白符。

java解错误票据

###注意事项-蓝桥杯编辑器不知道为什么并不能解析\s,要写成\\s-票据输入不是按顺序的,是随机的,所以需要排个序-里面有个重复的数,所以可能出现123346这种情况,断号的是5不是3,**解决方案**1将所有数据放入set中,在放入之前利用set的查找方法看看set中是否存了这个数了,

[2013年第四届真题]错误票据

importjava.util.ArrayList;importjava.util.Collections;importjava.util.Scanner;publicclass错误票据{/***@paramargs*/publicstaticvoidmain(String[]args){//TODO

蓝桥杯2013年第四届真题-错误票据-题解(Java代码)

解题思路:采用的是计数排序的算法,先创建一个最大数量的数组记录出现个数,再判断出现0和2所对应的下标数,即为断号和重号。判断0时,要判断当前数组值为0并且其前一项数组值不为0,这样才能保证该下标在票面范围内。每轮结束时,判断是否已经确定a,b的值(断号和重号),即可退出循环。