Visitors hit counter dreamweaver

poj 1008 模拟题

/*
 * =====================================================================================
 *
 *       Filename:  main.cpp
 *
 *    Description:  poj 1008
 *
 *        Version:  1.0
 *        Created:  2012/5/6 22:28:05
 *       Revision:  none
 *       Compiler:  gcc
 *
 *         Author:  Jason Damon     
 *   Organization:  XD University
 *
 * =====================================================================================
 */
#include <stdlib.h>
#include <iostream>
#include <fstream>

#pragma warning (disable:4786)

#include <map>
#include <string>

using namespace std;

char HMonth[18][10]={"pop","no","zip","zotz","tzec","xul","yoxkin","mol","chen","yax","zac","ceh","mac","kankin","muan","pax","koyab","cumhu"};
char TMonth[20][10]={"imix","ik","akbal","kan","chicchan","cimi","manik","lamat","muluk","ok","chuen","eb","ben","ix","mem","cib","caban","eznab","canac","ahau"};
int n,sum_day;
map<string,int> HM;
map<int,string> TM;

int count_haab(int day,int month,int year)
{
    sum_day=0;
    sum_day+=year*365;
    sum_day+=month*20;
    sum_day+=day;
    return sum_day;
}

void count_t()
{
    int year,day,tem_month;
    string month;
    year=sum_day/260;
    sum_day=sum_day%260;
    tem_month=sum_day%20;
    day=sum_day%13+1;
    cout<<day<<" "<<TM[tem_month]<<" "<<year<<endl;
}

int main()
{
    int i,day,year;
    char doc,month[10];

    for(i=0; i<20; i++)
    {
        HM.insert(pair<string,int>(HMonth[i],i));
    }
    for(i=0; i<20; i++)
    {
        TM.insert(pair<int,string>(i,TMonth[i]));
    }

    freopen("in.txt","r",stdin);
    scanf("%d",&n);
    printf("%d\n",n);
for(i=0; i<n; i++)
{
    cin>>day>>doc>>month>>year;
    //求总天数
    if(HM.count(month)>0) //前18个月
    {
            sum_day=count_haab(day,HM[month],year);
    }
    else
    {
        sum_day=count_haab(day,18,year);
    }
    count_t();
}
     return 0;
}

 

   第一题模拟题。为了校赛。加油!

   题意:就是两个日历之间的转换问题。关键是对应上来就好了。我用的是STL中的map,也算是基本学会了map的操作。

 

 

posted @ 2012-05-06 22:30  Jason Damon  阅读(230)  评论(0编辑  收藏  举报