POJ1008

题目http://acm.pku.edu.cn/JudgeOnline/problem?id=1008

  1. import java.util.Scanner;
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         Scanner scan = new Scanner(System.in);
  5.         int times = scan.nextInt();
  6.         System.out.println(times);
  7.         int day;
  8.         int day2;
  9.         int t_day = 0;
  10.         int t_month;
  11.         String month;
  12.         String month2;
  13.         int year;
  14.         int year2;
  15.         int day_num;
  16.         int day_num2;
  17.         for (int i = 0; i < times; i++) {
  18.             String str_day = scan.next();
  19.             day = Integer.parseInt(str_day.substring(0, str_day.length() - 1));
  20.             month = scan.next();
  21.             year = scan.nextInt();
  22.             t_month = getHaabMonth(month);
  23.             if(t_month<=18){
  24.                 t_day = (t_month-1) * 20;
  25.             }else{
  26.                 t_day = 360;
  27.             }
  28.             day_num = 365 * year  +  t_day + (day + 1);
  29.             year2 = day_num / 260;
  30.             day_num2 = day_num % 260;
  31.             if(day_num2 == 0){
  32.                 year2--;
  33.             }
  34.             day2 = day_num2 % 13;
  35.             if (day2 == 0) {
  36.                 day2 = 13;
  37.             }
  38.             month2 = getTzolkinMonth(day_num2 % 20);
  39.             System.out.println(day2 + " " + month2 + " " + year2);
  40.         }
  41.     }
  42.     public static int getHaabMonth(String month) {
  43.         if (month.equals("pop")) {
  44.             return 1;
  45.         } else if (month.equals("no")) {
  46.             return 2;
  47.         } else if (month.equals("zip")) {
  48.             return 3;
  49.         } else if (month.equals("zotz")) {
  50.             return 4;
  51.         } else if (month.equals("tzec")) {
  52.             return 5;
  53.         } else if (month.equals("xul")) {
  54.             return 6;
  55.         } else if (month.equals("yoxkin")) {
  56.             return 7;
  57.         } else if (month.equals("mol")) {
  58.             return 8;
  59.         } else if (month.equals("chen")) {
  60.             return 9;
  61.         } else if (month.equals("yax")) {
  62.             return 10;
  63.         } else if (month.equals("zac")) {
  64.             return 11;
  65.         } else if (month.equals("ceh")) {
  66.             return 12;
  67.         } else if (month.equals("mac")) {
  68.             return 13;
  69.         } else if (month.equals("kankin")) {
  70.             return 14;
  71.         } else if (month.equals("muan")) {
  72.             return 15;
  73.         } else if (month.equals("pax")) {
  74.             return 16;
  75.         } else if (month.equals("koyab")) {
  76.             return 17;
  77.         } else if (month.equals("cumhu")) {
  78.             return 18;
  79.         } else if (month.equals("uayet")) {
  80.             return 19;
  81.         } else {
  82.             return 0;
  83.         }
  84.     }
  85.     public static String getTzolkinMonth(int month) {
  86.         if (month == 1) {
  87.             return "imix";
  88.         } else if (month == 2) {
  89.             return "ik";
  90.         } else if (month == 3) {
  91.             return "akbal";
  92.         } else if (month == 4) {
  93.             return "kan";
  94.         } else if (month == 5) {
  95.             return "chicchan";
  96.         } else if (month == 6) {
  97.             return "cimi";
  98.         } else if (month == 7) {
  99.             return "manik";
  100.         } else if (month == 8) {
  101.             return "lamat";
  102.         } else if (month == 9) {
  103.             return "muluk";
  104.         } else if (month == 10) {
  105.             return "ok";
  106.         } else if (month == 11) {
  107.             return "chuen";
  108.         } else if (month == 12) {
  109.             return "eb";
  110.         } else if (month == 13) {
  111.             return "ben";
  112.         } else if (month == 14) {
  113.             return "ix";
  114.         } else if (month == 15) {
  115.             return "mem";
  116.         } else if (month == 16) {
  117.             return "cib";
  118.         } else if (month == 17) {
  119.             return "caban";
  120.         } else if (month == 18) {
  121.             return "eznab";
  122.         } else if (month == 19) {
  123.             return "canac";
  124.         } else if (month == 0) {
  125.             return "ahau";
  126.         } else {
  127.             return "";
  128.         }
  129.     }
  130. }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值