POJ 1008

 1 #include <stdio.h>
2 #include <string.h>
3 char haab[18][10]={
4 "pop", "no", "zip", "zotz", "tzec", "xul", "yoxkin", "mol", "chen",
5 "yax", "zac", "ceh", "mac", "kankin", "muan", "pax", "koyab", "cumhu"
6 };
7 char tzo[20][10]={
8 "imix", "ik", "akbal", "kan", "chicchan", "cimi", "manik", "lamat", "muluk", "ok",
9 "chuen", "eb", "ben", "ix", "mem", "cib", "caban", "eznab", "canac", "ahau"
10 };
11
12 int main()
13 {
14 freopen("1.txt", "r", stdin);
15 int n, hday, hyear;
16 char hmonth[10];
17 scanf("%d", &n);
18 printf("%d\n", n);
19 while(n--)
20 {
21 charstring[30];
22 scanf("%d. %s %d", &hday, hmonth, &hyear);
23 int i;
24 for(i =0; i <18; i++)
25 if( strcmp(hmonth, haab[i]) ==0 )
26 break;
27 int total =365* hyear + i *20+ hday +1;
28
29 printf("%d %s %d\n", total%13==0?13:total%13, tzo[total%20==0?19:(total%20-1)], total%260==0?(total/260-1):total/260);
30 }
31 return0;
32 }

此题不难,但关键在于处理边界情况。开始没有注意到取模为0的情况,导致不停的WA。

转载于:https://www.cnblogs.com/ShaneZhang/archive/2011/08/06/2129644.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值