蒟蒻WA代码:
#include<bits/stdc++.h>
using namespace std;
int n,a[5005],sy,sm,sd,sh,sf,ey,em,ed,eh,ef,ans=0;
int m[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
bool fmp(){
//if(sy==ey&&sm==em&&sd==ed&&sh==eh&&sf==ef) return true;
if(sy==ey&&sm==em&&sd==ed&&sh==eh&&sf>ef) return true;
if(sy==ey&&sm==em&&sd==ed&&sh>eh) return true;
if(sy==ey&&sm==em&&sd>ed) return true;
if(sy==ey&&sm>em) return true;
if(sy>ey) return true;
return false;
}
int main(){
cin>>n;
for(int i=1;i<=n;++i){
cin>>a[i];
}
scanf("%d-%d-%d-%d:%d",&sy,&sm,&sd,&sh,&sf);
scanf("%d-%d-%d-%d:%d",&ey,&em,&ed,&eh,&ef);
sort(a+1,a+n+1);
for(int i=1;i<=n;++i){
ans++;
sf+=a[i];
if(sy%4==0&&sy%100!=0||sy%400==0) m[2]=29;
else m[2]=28;
if(sf>=60) sh+=sf/60,sf%=60;
if(sh>=24) sd+=sh/24,sh%=24;
if(sd>m[sm]) sd-=m[sm],sm++;
if(sm>365){
if(sy%4==0&&sy%100!=0||sy%400==0){
if(sm>366) sm-=366,sy++;
}else{
sm-=365,sy++;
}
}
if(fmp()){
ans--;
break;
}
}
cout<<ans;
return 0;
}