1006

来源:互联网 发布:怎么查询端口号 server 编辑:程序博客网 时间:2024/05/21 17:15

题意:

如实验室每天刷指纹,然后根据记录得出每天最早和最晚的那俩人;

分析:

直接在两个数组中找出最小的和最大的,然后再分别映射到ID上即可

package AdvancedLevelPractice;import java.util.Scanner;public class pat1006 {public static void main(String[] args) {// TODO Auto-generated method stubScanner scanner = new Scanner(System.in);int M = scanner.nextInt();String[] nameStrings = new String[M];String[] unlockStrings = new String[M];String[] lockStrings = new String[M];for(int i = 0; i < M; i++){nameStrings[i] = scanner.next();unlockStrings[i] = scanner.next();lockStrings[i] = scanner.next();}int unlock = getUnlock(unlockStrings);int lock = getLock(lockStrings);System.out.print(nameStrings[unlock]+" "+nameStrings[lock]);scanner.close();}private static int getLock(String[] lockStrings) {// TODO Auto-generated method stubString[] timeStrings = lockStrings[0].split(":");int[] time = new int[3];for(int i = 0; i < 3; i++){time[i] = Integer.parseInt(timeStrings[i]);}int index = 0;for(int i = 1; i < lockStrings.length; i++){String[] tmpStrings = lockStrings[i].split(":");for(int j = 0; j < 3; j++){if(Integer.parseInt(tmpStrings[j]) > time[j]){time[0] = Integer.parseInt(tmpStrings[0]);time[1] = Integer.parseInt(tmpStrings[1]);time[2] = Integer.parseInt(tmpStrings[2]);index = i;break;}}}return index;}private static int getUnlock(String[] unlockStrings) {// TODO Auto-generated method stubString[] timeStrings = unlockStrings[0].split(":");int[] time = new int[3];for(int i = 0; i < 3; i++){time[i] = Integer.parseInt(timeStrings[i]);}int index = 0;for(int i = 1; i < unlockStrings.length; i++){String[] tmpStrings = unlockStrings[i].split(":");for(int j = 0; j < 3; j++){if(Integer.parseInt(tmpStrings[j]) < time[j]){time[0] = Integer.parseInt(tmpStrings[0]);time[1] = Integer.parseInt(tmpStrings[1]);time[2] = Integer.parseInt(tmpStrings[2]);index = i;break;}}}return index;}}



0 0
原创粉丝点击