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