人口普查(20)
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int total = in.nextInt(); //总人数 int count = 0;//有效生日的个数 boolean flag; int maxindex = 0; int minindex = 0; String startday ="2014/09/06"; String endday = "1814/09/06";//相差两百 String names[] = new String[100000]; String birthdays[] = new String[100000]; for (int i = 0; i < total; i++) { names[i] = in.next(); birthdays[i] = in.next(); flag = true; if(birthdays[i].compareTo(startday)>0||birthdays[i].compareTo(endday)<0){ flag = false;//超过时间区间 } if(flag){ count++; if(birthdays[i].compareTo(birthdays[maxindex])<0){//小于参数返回 -1 maxindex= i;//注意日期字面小就是年龄大 } else if(birthdays[i].compareTo(birthdays[minindex])>0){//大于参数返回11 minindex= i;//注意日期字面大就是年龄小 } }else{//如果日期超过了区间,并且最大最小的下标为当前下标,则下标++ if(maxindex==i){ maxindex++; } if(minindex==i){ minindex++; } } } if(count==0) System.out.println(count); else System.out.println(count+" "+names[maxindex]+" "+names[minindex]); } }
PAT乙级 文章被收录于专栏
做题记录