Maya Calendar POJ - 1008 (模拟)
简述
注意260天的情况,这个地方还是0年
代码
#include <iostream>
#include <map>
#include <sstream>
using namespace std;
map<string,int> bk;
map<int,string> bk1;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
bk["pop"]=1;bk["no"]=2;bk["zip"]=3;bk["zotz"]=4;
bk["tzec"]=5;bk["xul"]=6;bk["yoxkin"]=7;bk["mol"]=8;
bk["chen"]=9;bk["yax"]=10;bk["zac"]=11;bk["ceh"]=12;
bk["mac"]=13;bk["kankin"]=14;bk["muan"]=15;bk["pax"]=16;
bk["koyab"]=17;bk["cumhu"]=18;bk["uayet"]=19;
bk1[1]="imix";bk1[2]="ik";bk1[3]="akbal";bk1[4]="kan";
bk1[5]="chicchan";bk1[6]="cimi";bk1[7]="manik";bk1[8]="lamat";
bk1[9]="muluk";bk1[10]="ok";bk1[11]="chuen";bk1[12]="eb";bk1[13]="ben";
bk1[14]="ix";bk1[15]="mem";bk1[16]="cib";bk1[17]="caban";bk1[18]="eznab";
bk1[19]="canac";bk1[20]="ahau";
int n;
cin>>n;
cout<<n<<"\n";
cin.get();
while(n--)
{
string a;
getline(cin,a);
string t="";
for(int i=0;i<a.size();i++)
if(isdigit(a[i]))
t+=a[i];
else
break;
int l=t.size();
l+=2;
stringstream s;
s<<t;
int day;
s>>day;
day+=1;
t="";
for(int i=l;;i++)
if(isalpha(a[i]))
t+=a[i];
else
break;
l+=t.size();
//cout<<t<<"\n";
int month=bk[t];
t="";
l+=1;
for(int i=l;i<a.size();i++)
if(isdigit(a[i]))
t+=a[i];
stringstream s1;
s1<<t;
int year;
s1>>year;
//cout<<year<<" "<<month<<" "<<day<<"\n";
int sum=year*365+(month-1)*20+day;
int ty;
if(sum==0)
ty=0;
else
ty=(sum-1)/260;
int yu=(sum-1)%260+1;
int td=(yu-1)%13+1;
int st=(yu-1)%20+1;
//cout<<st<<"\n";
cout<<td<<" "<<bk1[st]<<" "<<ty<<"\n";
}
}
Maya Calendar POJ - 1008 (模拟)的更多相关文章
- poj 1008:Maya Calendar(模拟题,玛雅日历转换)
Maya Calendar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 64795 Accepted: 19978 D ...
- POJ 1008 Maya Calendar
链接:http://poj.org/problem?id=1008 Maya Calendar Time Limit: 1000MS Memory Limit: 10000K Total Subm ...
- Poj OpenJudge 百练 Bailian 1008 Maya Calendar
1.Link: http://poj.org/problem?id=1008 http://bailian.openjudge.cn/practice/1008/ 2.content: Maya Ca ...
- [POJ 1008] Maya Calendar C++解题
Maya Calendar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 62297 Accepted: 192 ...
- [POJ] #1008# Maya Calendar : 字符处理/同余问题
一. 题目 Maya Calendar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 74085 Accepted: 2 ...
- POJ 1008 Maya Calendar / UVA 300【日期转换/常量数组】
Maya Calendar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 82431 Accepted: 25319 Descr ...
- Poj Maya Calendar
http://poj.org/problem?id=1008 Maya Calendar Time Limit: 1000MS Memory Limit: 10000K Total Submissio ...
- Maya Calendar 分类: POJ 2015-06-11 21:44 12人阅读 评论(0) 收藏
Maya Calendar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 70016 Accepted: 21547 D ...
- POJ1008 Maya Calendar
题目来源:http://poj.org/problem?id=1008 题目大意: Maya人认为一年有365天,但他们有两种日历.一种叫做Haab,有19个月.前18个月每月20天,每个月的名字分别 ...
随机推荐
- 第一次PHP面试题
1.标记符title是放在标记符什么之间:head 2.级联样式表文件的扩展名:CSS 3.html中<pre>的作用:pre 元素可定义预格式化的文本 4.mysql_affected_ ...
- CSP 201612-4 压缩编码 【区间DP+四边形不等式优化】
问题描述 试题编号: 201612-4 试题名称: 压缩编码 时间限制: 3.0s 内存限制: 256.0MB 问题描述: 问题描述 给定一段文字,已知单词a1, a2, …, an出现的频率分别t1 ...
- 写一个简单的Makefile
all: osx .PHONY: osx linux run osx: kale.dylib linux : kale.so run: kale.bin CC = gcc OBJECTS = $(pa ...
- leetcode 690. Employee Importance——本质上就是tree的DFS和BFS
You are given a data structure of employee information, which includes the employee's unique id, his ...
- 蓝书3.3 SPFA算法的优化
T1 最小圈 bzoj 1486 题目大意: 一个环的权值平均值为定义为一个这个环上所有边的权值和除以边数 求最小的环的权值平均值 思路: 二分一个值 把所有边减去这个值 判断是否有负环 #inclu ...
- python-----复制文件夹
python复制文件夹有两种方法: 1.使用shutil模块:(要保存的路径必须事先不存在) #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time ...
- 9. Ext基础1 -- Ext中 getDom、get、getCmp的区别
转自:https://blog.csdn.net/huobing123456789/article/details/7982061 要学习及应用好Ext框架,必须需要理解Html DOM.Ext El ...
- EasyUI系列学习(六)-Tooltip(提示框)
一.创建组件 0.Tooltip不依赖其他组件 1.使用class加载 <a href="#" class="easyui-tooltip" title= ...
- PostgreSQL 流复制+高可用
QA PgPool-II 同步 Postgresql X1 服务器准备 192.168.59.121 PostgreSQL10 192.168.59.120 PGPool-II 3.7 X2 安装Po ...
- 3122 奶牛代理商 VIII
3122 奶牛代理商 VIII 时间限制: 3 s 空间限制: 256000 KB 题目等级 : 大师 Master 题目描述 Description 小徐是USACO中国区的奶牛代理商, ...