PKU1008
题名:玛雅历
题意:历法转换 。
代码:
// 1008.cpp : 定义控制台应用程序的入口点。
// #include "stdafx.h" #include <iostream>
using namespace std;
class data
{
public:
char day[];
char mon[];
char year[];
}; int main(int argc, char* argv[])
{
int num=;
cin>>num;
char temp[]={};
data *s=new data[num];
for (int i=;i<num;i++)
{
cin>>s[i].day>>s[i].mon>>s[i].year;
}
cout<<num<<endl;
string *sday=new string[];
int tmon=,tday=;
int count=;
int o=,p=;
string ma[]={"imix","ik","akbal","kan","chicchan","cimi","manik","lamat","muluk","ok","chuen","eb","ben","ix","mem","cib","caban","eznab","canac","ahau"};
while()//计算Tzolkin历表对应一年中的天数
{
o++;
p++;
if(o>)
o=;
if(p>)
p=;
char temp[];
sprintf(temp,"%d ",o);
sday[count]=temp;
sday[count]+=ma[p-];
count++;
if(count==)
break; }
string HaabMonDic[]={"pop","no","zip","zotz","tzec","xul","yoxkin","mol","chen","yax","zac","ceh","mac","kankin","muan","pax","koyab","cumhu","uayet"};
for (int i=;i<num;i++)
{
int day=atoi(s[i].day)+;
string month=s[i].mon;
int imonth=;
string year=s[i].year;
int iyear=atoi(year.c_str());
for (int j=;j<;j++)
{
if(month.compare(HaabMonDic[j])==)
{
imonth=j;
break;
}
}
int allday=iyear*+imonth*+day;
int tyear=allday/;
int tt=allday%;
if(tt==)//如果是最后一天,需要转换
{
tyear--;
tt=;
}
printf("%s %d\n",sday[tt-].c_str(),tyear);
}
delete []sday;
delete []s;
return ; }
总结:想当然,忘记要转换的历法最后一天要特殊处理,第一种历法实际上是有19个月。马虎粗心大意,哎
PKU1008的更多相关文章
随机推荐
- CSS样式应用
CSS样式应用的方法: (1)行内样式,将css样式直接放到标签当中,一般都是放入标签的style属性中,它是最方便的一种样式,也是最不方便修改的样式.如下: (2)内嵌式,通过将css写在网页源文件 ...
- Tomcat(免安装版)的安装与配置
一.下载Tomcat Tomcat可以从http://tomcat.apache.org/网站下载,选择任意版本,在 Binary Distributions 下的zip包既是. 二.配置Tomcat ...
- qt 设置
右击不同类型的文件,点属性,可以选择处理文件的工具,比如自动生成uic qrc右击工程属性,然后可以转换成QT工程翻译文件如果只读的话,可以右击换一个编辑器打开 如果翻译文件只读的话,必须直接使用字符 ...
- 权重和层叠规则决定了CSS样式优先级
一.基本的优先级规则 比较同一级别的个数,数量多的优先级高,如果相同即比较下一级别的个数,至于各级别的优先级如下: important > 内联 > ID > 类 > 标签 | ...
- C# in VS
1. DllImport是System.Runtime.InteropServices命名空间下与与非托管相关的一个属性类,负责导出从非托管的dll中导出函数信息,导出的函数在声明时必须有extern ...
- js判断数组
1.constructor 在W3C定义中的定义:constructor 属性返回对创建此对象的数组函数的引用 就是返回对象相对应的构造函数.从定义上来说跟instanceof不太一致,但效果都是一样 ...
- 四步完成NodeJS安装,配置和测试
四步完成NodeJS安装,配置和测试 NodeJS 官网地址: http://nodejs.org/ 第一步:在官网点击 ’ INSTALL ’,下载相应的版本(我的机器是Win7专业版 64bit) ...
- [css3]水平垂直居中
position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
- IOS Core Animation Advanced Techniques的学习笔记(五)
第六章:Specialized Layers 类别 用途 CAEmitterLayer 用于实现基于Core Animation粒子发射系统.发射器层对象控制粒子的生成和起源 CAGradient ...
- stm8s103头文件
//============================================================================== //================= ...