记录编号 |
222906 |
评测结果 |
AAAAAAAAAA |
题目名称 |
wordsa |
最终得分 |
100 |
用户昵称 |
GaoErFu |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.007 s |
提交时间 |
2016-02-05 16:12:11 |
内存使用 |
0.31 MiB |
显示代码纯文本
#include<stdio.h>
#include<stdlib.h>
int a[5010]={0};
char b[20]={0},c[20]={0};
int cmp(const void *a,const void *b)
{return *(int*)a-*(int*)b;}
int panduan(int a)
{
if(a%4!=0)
return 0;
else if(a%400==0)
return 1;
else if(a%100==0)
return 0;
else return 1;
}
int main()
{
freopen("wordsa.in","r",stdin);
freopen("wordsa.out","w",stdout);
int i,N,n1,n2,y1,y2,r1,r2,x1,x2,f1,f2,time=0,ans=0;
scanf("%d",&N);
for(i=0;i<N;i++)
{scanf("%d",&a[i]);}
qsort(a,N,sizeof(a[0]),cmp);
scanf("%s%s",b,c);
n1=(b[0]-48)*1000+(b[1]-48)*100+(b[2]-48)*10+(b[3]-48);
y1=(b[5]-48)*10+(b[6]-48);
r1=(b[8]-48)*10+(b[9]-48);
x1=(b[11]-48)*10+(b[12]-48);
f1=(b[14]-48)*10+(b[15]-48);
n2=(c[0]-48)*1000+(c[1]-48)*100+(c[2]-48)*10+(c[3]-48);
y2=(c[5]-48)*10+(c[6]-48);
r2=(c[8]-48)*10+(c[9]-48);
x2=(c[11]-48)*10+(c[12]-48);
f2=(c[14]-48)*10+(c[15]-48);
if(n2-n1>1)
{
for(i=n1+1;i<n2;i++)
{
if(panduan(i)==1)
{time+=366*24*60;}
else time+=365*24*60;
}
}//计算年
if(n1!=n2)
{
for(i=y1+1;i<=12;i++)
{
if(i==2&&panduan(n1)==1)time+=29*24*60;
else if(i==2)time+=28*24*60;
else if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)time+=31*24*60;
else if(i==4||i==6||i==9||i==11)time+=30*24*60;
}
for(i=1;i<y2;i++)
{
if(i==2&&panduan(n2)==1)time+=29*24*60;
else if(i==2)time+=28*24*60;
else if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)time+=31*24*60;
else if(i==4||i==6||i==9||i==11)time+=30*24*60;
}
}
else if(n1==n2)
{
for(i=y1+1;i<y2;i++)
{
if(i==2&&panduan(n1)==1)time+=29*24*60;
else if(i==2)time+=28*24*60;
else if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)time+=31*24*60;
else if(i==4||i==6||i==9||i==11)time+=30*24*60;
}
}//计算月
if(n1==n2&&y1==y2&&r1-r2>1)
{
time+=(r2-r1-1)*24*60;
}
else if(y1!=y2||(y1==y2&&n1!=n2))
{
if(y1==2&&panduan(n1)==1)
time+=(29-r1)*24*60;
else if(y1==2)time+=(28-r1)*24*60;
else if(y1==1||y1==3||y1==5||y1==7||y1==8||y1==10||y1==12)time+=(31-r1)*24*60;
else if(y1==4||y1==6||y1==9||y1==11)time+=(30-r1)*24*60;
time+=(r2-1)*24*60;
}//计算日
if(n1==n2&&y1==y2&&r1==r2)
{time+=(x2-x1)*60+(f2-f1);}
else
{
time+=(24-x1)*60+(0-f1);
time+=x2*60+f2;
}//计算小时与分钟
for(i=0;i<N;i++)
{
if((time-=a[i])>=0)ans++;
else break;
}
printf("\n%d",ans);
return 0;
}