蓝桥杯.历届试题: 错误票据

 

package LanQiao;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

public class LANQIAO_2 {

public static void main(String args[]) {

//输入格式及数据的处理: 这种输入方式适用于;对于行数确定,行内的具体项数不确定的情况
Scanner in = new Scanner(System.in);
int N = in.nextInt();
String s[] = new String[N];
String ss[][] = new String[N][];
in.nextLine();
//此时in.nextLine 会让下面对于字符串的输入与上面对于整形的输入分开
for (int i = 0; i < N; i++) {
s[i] = in.nextLine();
ss[i] = s[i].split(" ");  //根据空格分离字符串,并存入二维数组

System.out.println(ss[i][1]);    //输出第二个字符串中分离空格后第二个数据
}

输入N个字符串 放入一维数组中,然后把字符串进行分解,根据空格,找出单独的某项,放入二维数组里,虽然没有节省空间,但是没有影响数组里数据的类型,对于以后的计算等问题提供便利

List<Integer> list = new ArrayList<Integer>();

for (int i = 0; i < N; i++)
for (int j = 0; j < ss[i].length; j++) {
// System.out.println(ss[i][j]);
list.add(Integer.valueOf(ss[i][j]));
}
Collections.sort(list);

http://blog.csdn.net/u011299745/article/details/52654023 关于排序的介绍

 

int cw = -1, cf = -1, size = list.size(), a, b;
// cf记录重复值
for (int i = 0; i < size - 1; i++) {
a=list.get(i);
if (a == list.get(i + 1)) {
cf = a;
list.remove(i);
break;
}
}
// cw为断号
for (int i = 0; i < size - 1; i++) {
a=list.get(i);
if (a + 1 != list.get(i + 1)){
cw = a + 1;
break;
}
}
System.out.println(cw + " " + cf);
}
}

 

posted @ 2018-01-19 10:22  浅花迷人的微笑  阅读(376)  评论(0)    收藏  举报