摘要:水,不過奇怪用atoi()怎麼要包含algorithm,明天去看看書
#include <iostream>
#include <map>
#include <string>
#include <algorithm>
using namespace std;
map<string, int> h_month;
map<int, string> t_day;
const int h_year_days = 365;
const int t_year_days = 260;
int main()
{
string h_month_array[] = {"pop", "no", "zip", "zotz", "tzec", "xul", "yoxkin", "mol", "chen", "yax", "zac", "ceh", "mac", "kankin", "muan", "pax", "koyab", "cumhu", "uayet"};
string t_day_array[] = {"imix", "ik", "akbal", "kan", "chicchan", "cimi", "manik", "lamat", "muluk", "ok", "chuen", "eb", "ben", "ix", "mem", "cib", "caban", "eznab", "canac", "ahau"};
for(int i=0; i<sizeof(h_month_array)/sizeof(h_month_array[0]); i++){
h_month[h_month_array[i]] = i;
}
for(int i=0; i<sizeof(t_day_array)/sizeof(t_day_array[0]); i++){
t_day[i] = t_day_array[i];
}
int n;
cin >> n;
cout << n << endl;
while( n > 0 ){
string day, month;
int year;
cin >> day >> month >> year;
int total = year * h_year_days + atoi((day.substr(0, day.length()-1)).c_str()) + 20 * h_month[month];
int t_year = 0;
int t_day_index = 0;
string t_day_name;
t_year = total / t_year_days;
total = total - t_year * t_year_days;
t_day_name = t_day[total % 20];
t_day_index = total % 13 + 1;
cout << t_day_index << " " << t_day_name << " " << t_year << endl;
n--;
}
return 0;
}