hdu1201(从出生长18岁经过多少天)

#include<stdio.h>
int main()
{
    int y,m,d,sum,t,i;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d-%d-%d",&y,&m,&d);
        sum=0;
        if(m==2&&d==29)//这一天平年没有生日
        {
            printf("-1\n");
        }
        else
        {
           for(i=y;i<=y+18;i++)
           if(i==y&&m<3&&(i%400==0||i%4==0&&i%100!=0))
           sum++;
           else if(i==y+18&&m>=3&&(i%400==0||i%4==0&&i%100!=0))
           sum++;
           else if(i>y&&i<y+18)
           if(i%400==0||i%4==0&&i%100!=0)
           sum++;
           printf("%d\n",365*18+sum);
        }
    }
    return 0;
}


posted @ 2013-05-11 20:52  xinyuyuanm  阅读(196)  评论(0编辑  收藏  举报