• PAT(B) 1014 福尔摩斯的约会(Java)


    题目链接:1014 福尔摩斯的约会
    注意
    • 三个字眼:“第1对”,“第2对”,“第1对”,因此如果你用了循环,别忘了break,因为后面也可能有相同的字母
    • 星期几,第1对相同的A-GA代表"MON"D代表THU
    • 小时(钟头),0-9A-N
    • 题目保证有唯一解,因此不需要使用Math.min(int a, int b)获取较短长度,来避免越界
    • 分钟,A-Za-z
    • 小时和分钟任何时候都是占2
    • 长度不超过60直接忽略,没用。
    输入样例:
    j454HkCTOtFN5uh
    J65tHkCtOtFN4
    &.6wowpHnv
    &.6WOWpH
    
    输出样例:
    WED 15:07
    

    上面的样例能测试注意中涉及到的所有细节。

    代码
    /**
     * Score: 20
     * Run Time: 120ms
     * @author wowpH
     * @version 1.6
     */
    
    import java.util.Scanner;
    
    public class Main {
    	public static void main(String[] args) {
    		String[] s = new String[4];
    		String[] week = { "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN" };
    
    		Scanner sc = new Scanner(System.in);
    		for (int i = 0; i < 4; i++) {
    			s[i] = sc.next();// 输入
    		}
    		sc.close();
    
    		// 星期几
    		int i;
    		char ch;
    		int len = s[0].length();
    		for (i = 0; i < len; i++) {
    			ch = s[0].charAt(i);
    			if (ch == s[1].charAt(i)) {
    				if (ch >= 'A' && ch <= 'G') {// A~G
    					System.out.print(week[ch - 'A'] + " ");// 星期几
    					break;
    				}
    			}
    		}
    
    		// 小时
    		for (i = i + 1; i < len; i++) {
    			ch = s[0].charAt(i);
    			if (ch == s[1].charAt(i)) {
    				if (Character.isDigit(ch)) {// 0~9
    					System.out.printf("%02d:", ch - '0');
    					break;
    				} else if (ch >= 'A' && ch <= 'N') {// A~N
    					System.out.printf("%02d:", ch - 'A' + 10);
    					break;
    				}
    			}
    		}
    
    		// 分钟
    		len = s[2].length();
    		for (i = 0; i < len; i++) {
    			ch = s[2].charAt(i);
    			if (ch == s[3].charAt(i)) {
    				// A~Z或a~z
    				if (ch >= 'A' && ch <= 'Z' || ch >= 'a' && ch <= 'z') {
    					System.out.printf("%02d
    ", i);
    					break;
    				}
    			}
    		}
    	}
    }
    
  • 相关阅读:
    Shell for
    rsync 目录 斜杠
    shell local
    linux secureCRT utf-8编码显示
    eclipse maven 项目不显示 target目录
    如何打印身份证实际大小
    linux 去掉 ^M
    hibernate 之 集合映射中list映射
    hibernate 之 复合主键映射
    hibernate 之 组件映射
  • 原文地址:https://www.cnblogs.com/wowpH/p/11060784.html
Copyright © 2020-2023  润新知