星际联盟 @ 2020-02-09 17:11:43
#include <bits/stdc++.h>
#define re register
using namespace std;
typedef long long ll;
const int N=1e4,M=2e4;
//¶¨Òåʱ¼ä
struct tim{
int y,m,d,h,mi;
}st,ed;
//¶¨Òå±äÁ¿
ll n,ans=0,all=0;
ll a[N],sum[N];
int month[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
bool mark[M];
ll runy[13][35][25][65],unruny[13][35][25][65];
//¼ì²éÊÇ·ñΪÈòÄê
bool check(int k)
{
if(k%400!=0 && k%4==0) return true;
else if(k%400==0 && k%100!=0) return true;
return false;
}
//¼ì²ést,edÊÇ·ñÏàͬ
bool sam(const tim &A,const tim &B)
{
return (A.y==B.y && A.m==B.m && A.d==B.d && A.h==B.h && A.mi==B.mi);
}
//Ä£ÄâÿһÌì
void add(ll res[13][35][25][65],ll cnt)
{
if(cnt) month[2]=29;
int tot=0;
for(re int i =1;i<=12;i++)
for(re int j =1;j<=month[i];j++)
for(re int k=0;k<=23;k++)
for(re int l=0;l<=59;l++)
res[i][j][k][l]=(++tot);
month[2]=28;
}
//³õʼ»¯
void Init()
{
sort(a+1,a+n+1);
for(re int i =1;i<=n;i++)
sum[i]=sum[i-1]+a[i];
for(re int i=0;i<=9999;i++)
if(check(i)) mark[i]=1;
add(runy,1);
add(unruny,0);
return ;
}
//Ëã·¨ºËÐÄ
void Do()
{
//ËãÖмäÄêʱ¼ä
for(re int i=st.y+1;i<=ed.y-1;i++)
{
if(mark[i]) all=all+(366*24*60);
else all=all+(365*24*60);
}
//Ä£ÄâÆäËûʱ¼ä
if(st.y==ed.y)
{
if(mark[st.y]) all+=(runy[ed.m][ed.d][ed.h][ed.mi]-runy[st.m][st.d][st.h][st.mi]+1);
else all+=(unruny[ed.m][ed.d][ed.h][ed.mi]-unruny[st.m][st.d][st.h][st.mi]+1);;
}
else
{
if(mark[st.y]) all+=(runy[12][31][23][59]-runy[st.m][st.d][st.h][st.mi]+1);
else all+=(unruny[12][31][23][59]-unruny[st.m][st.d][st.h][st.mi]+1);
if(mark[ed.y]) all+=(runy[ed.m][ed.d][ed.h][ed.mi]-runy[1][1][0][0]+1);
else all+=(unruny[ed.m][ed.d][ed.h][ed.mi]-unruny[1][1][0][0]+1);
}
//ÕÒµ½Î»ÖÃ
for(re int i =1;i<=n;i++)
if(sum[i]<=all)
ans=i;
printf("%lld\n",ans);
return ;
}
//Ö÷º¯Êý
int main()
{
//¶ÁÈë
scanf("%lld",&n);
for(re int i=1;i<=n;i++)
scanf("%lld",&a[i]);
scanf("%d-%d-%d-%d:%d",&st.y,&st.m,&st.d,&st.h,&st.mi);
scanf("%d-%d-%d-%d:%d",&ed.y,&ed.m,&ed.d,&ed.h,&ed.mi);
//ÅжÏÊÇ·ñÏàͬ
if(sam(st,ed)){printf("0\n");return 0;}
Init();
Do();
return 0;
}
by 星际联盟 @ 2020-02-09 17:13:39
虽然方法暴力,还是只得了90分
by Yukinoshita_Yukino @ 2020-02-09 17:45:32
ÕÒµ½Î»ÖÃ?
by 风之影音 @ 2020-04-02 10:25:41
下载数据不香吗