zoj3131 Digital Clock(2)

来源:互联网 发布:淘宝帐号管理在那里 编辑:程序博客网 时间:2024/06/05 15:56

TLE了四次,终于过了,880ms哭哭哭。。。真不容易啊!!!

#include<stdio.h>int xx(char x,char y){    return (x-48)*10+y-48;}int main(){    int n,num,i,j,k,x,y,p,px,py,aa[86405],hh1,mm1,ss1,hh2,mm2,ss2;    char a[9],b[9];        p=0;      for(i=0;i<=23;i++)      for(j=0;j<=59;j++)        for(k=0;k<=59;k++)        {           if((i*10000+j*100+k)%3==0)              aa[p++]=1;           else             aa[p++]=0;        }                               scanf("%d",&n);                                             while(n--)    {       getchar();       scanf("%s%s",a,b);       hh1=xx(a[0],a[1]);  hh2=xx(b[0],b[1]);       mm1=xx(a[3],a[4]);  mm2=xx(b[3],b[4]);       ss1=xx(a[6],a[7]);  ss2=xx(b[6],b[7]);              x=hh1*10000+mm1*100+ss1;       y=hh2*10000+mm2*100+ss2;              px=ss1+mm1*60+hh1*3600;       py=ss2+mm2*60+hh2*3600;              num=0;       if(x<=y)       {         for(i=px;i<=py;i++)             if(aa[i]==1)               num++;         }       else       {           for(i=px;i<86400;i++)             if(aa[i]==1)               num++;           for(j=0;j<=py;j++)             if(aa[j]==1)               num++;           }       printf("%d\n",num);    }    return 0;}         


 

原创粉丝点击