hdu-1201-18岁生日

来源:互联网 发布:java的collection 编辑:程序博客网 时间:2024/06/05 18:12

#include<stdio.h>
int nian(int y)
{
if(y%4==0&&y%100!=0||y%400==0)
return 1;
else return 0;
}
int main()
{
 int s;
 scanf("%d",&s);
 while(s--)
 {
  int y,m,d,i,t,sum;
  int b[12]={31,28,31,30,31,30,31,31,30,31,30,31};
  char a,c;
  scanf("%d%c%d%c%d",&y,&a,&m,&c,&d);
  sum=t=0;
   // b[1]=29;
 // else b[1]=28;
  for(i=0;i<m-1;i++)
  {
   if(nian(y)==1&&i==1)
   t+=29;
  else t+=b[i];
  }
  t+=d;
  for(i=0;i<18;i++)
   if(nian(y+i)==1)
    sum+=366;
   else sum+=365;
  if(nian(y+18)==1)
  {
   b[1]=29;
   for(i=0;i<m-1;i++)
    sum+=b[i];
   sum+=d;
  }
  else
  {
   b[1]=28;
   for(i=0;i<m-1;i++)
    sum+=b[i];
   sum+=d;
  }
  if((m==2&&d==29)&&nian(y+18)==0) printf("-1\n");
  else printf("%d\n",sum-t);
 }
 return 0;
}

 

原创粉丝点击