天天看點

北大oj-1008

僅供學習和交流,請勿用作其他用途,歡迎評論咨詢問題或指出可以改進之處

import java.util.Scanner;

public class Main{
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int num = scanner.nextInt();
        System.out.println(num);
        int hDay, hMonth, hYear;
        int tDay, tMonth, tYear;
        int days;
        String hMonthStr,dayStr;
        while ((num--) > 0) {
            hDay = Integer.valueOf(scanner.next().replace(".",""));
            hMonthStr = scanner.next();
            if("pop" .equals(hMonthStr))  hMonth = 0;
            else if("no"  .equals(hMonthStr))  hMonth = 1;
            else if("zip" .equals(hMonthStr))  hMonth = 2;
            else if("zotz".equals(hMonthStr))  hMonth = 3;
            else if("tzec".equals(hMonthStr))  hMonth = 4;
            else if("xul" .equals(hMonthStr))  hMonth = 5;
            else if("yoxkin".equals(hMonthStr))hMonth = 6;
            else if("mol" .equals(hMonthStr))  hMonth = 7;
            else if("chen".equals(hMonthStr))  hMonth = 8;
            else if("yax" .equals(hMonthStr))  hMonth = 9;
            else if("zac" .equals(hMonthStr))  hMonth = 10;
            else if("ceh" .equals(hMonthStr))  hMonth = 11;
            else if("mac" .equals(hMonthStr))  hMonth = 12;
            else if("kankin".equals(hMonthStr))hMonth = 13;
            else if("muan".equals(hMonthStr))  hMonth = 14;
            else if("pax" .equals(hMonthStr))  hMonth = 15;
            else if("koyab".equals(hMonthStr)) hMonth = 16;
            else if("cumhu".equals(hMonthStr)) hMonth = 17;
            else hMonth = 18;
            hYear = scanner.nextInt();
            days = 365 * hYear + hMonth * 20 + hDay;
            tYear = (days - (days % 260)) / 260;
            tMonth = (days % 260) % 13 + 1;
            tDay = (days % 260) % 20 + 1;
            dayStr = "";
            switch (tDay) {
                case 20:
                    dayStr = "ahau";
                    break;
                case 1:
                    dayStr = "imix";
                    break;
                case 2:
                    dayStr = "ik";
                    break;
                case 3:
                    dayStr = "akbal";
                    break;
                case 4:
                    dayStr = "kan";
                    break;
                case 5:
                    dayStr = "chicchan";
                    break;
                case 6:
                    dayStr = "cimi";
                    break;
                case 7:
                    dayStr = "manik";
                    break;
                case 8:
                    dayStr = "lamat";
                    break;
                case 9:
                    dayStr = "muluk";
                    break;
                case 10:
                    dayStr = "ok";
                    break;
                case 11:
                    dayStr = "chuen";
                    break;
                case 12:
                    dayStr = "eb";
                    break;
                case 13:
                    dayStr = "ben";
                    break;
                case 14:
                    dayStr = "ix";
                    break;
                case 15:
                    dayStr = "mem";
                    break;
                case 16:
                    dayStr = "cib";
                    break;
                case 17:
                    dayStr = "caban";
                    break;
                case 18:
                    dayStr = "eznab";
                    break;
                case 19:
                    dayStr = "canac";
                    break;
            }
            System.out.println(tMonth+" "+dayStr+" "+tYear);
        }
    }
}