| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
用STL的map写起来比较简单rt.
/////////////////////////////分割线
#include <iostream>
#include <cstdio>
#include <string>
#include <vector>
#include <map>
using namespace std;
void init_dict(map<string, int> &h, map<int, string> &t)
{
//Haab dictionary
h.insert(make_pair(string("pop"), 0));
h.insert(make_pair(string("no"), 1));
h.insert(make_pair(string("zip"), 2));
h.insert(make_pair(string("zotz"), 3));
h.insert(make_pair(string("tzec"), 4));
h.insert(make_pair(string("xul"), 5));
h.insert(make_pair(string("yoxkin"), 6));
h.insert(make_pair(string("mol"), 7));
h.insert(make_pair(string("chen"), 8));
h.insert(make_pair(string("yax"), 9));
h.insert(make_pair(string("zac"), 10));
h.insert(make_pair(string("ceh"), 11));
h.insert(make_pair(string("mac"), 12));
h.insert(make_pair(string("kankin"), 13));
h.insert(make_pair(string("muan"), 14));
h.insert(make_pair(string("pax"), 15));
h.insert(make_pair(string("koyab"), 16));
h.insert(make_pair(string("cumhu"), 17));
h.insert(make_pair(string("uayet"), 18));
//tzolkin dictionary
t.insert(make_pair(1, string("imix")));
t.insert(make_pair(2, string("ik")));
t.insert(make_pair(3, string("akbal")));
t.insert(make_pair(4, string("kan")));
t.insert(make_pair(5, string("chicchan")));
t.insert(make_pair(6, string("cimi")));
t.insert(make_pair(7, string("manik")));
t.insert(make_pair(8, string("lamat")));
t.insert(make_pair(9, string("muluk")));
t.insert(make_pair(10, string("ok")));
t.insert(make_pair(11, string("chuen")));
t.insert(make_pair(12, string("eb")));
t.insert(make_pair(13, string("ben")));
t.insert(make_pair(14, string("ix")));
t.insert(make_pair(15, string("mem")));
t.insert(make_pair(16, string("cib")));
t.insert(make_pair(17, string("caban")));
t.insert(make_pair(18, string("eznab")));
t.insert(make_pair(19, string("canac")));
t.insert(make_pair(0, string("ahau")));
}
int main(int argc, char **argv)
{
map<string, int> haab;
map<int, string> tzolkin;
int n;
init_dict(haab, tzolkin);
cin>>n;
cout<<n<<endl;
for(int i = 0;i < n;i++){
int d;
string m;
int y;
scanf("%d.", &d);
cin>>m>>y;
int t = y*365 + haab[m]*20 + d + 1;
int tt = t % 260;
cout<<(tt%13?tt%13:13)<<" "<<tzolkin[tt%20]<<" "<<(tt?int(t/260):int(t/260-1))<<endl;
}
return 0;
}
Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator