#include<bits/stdc++.h>
using namespace std;
int n,a[1005],yd,nd,d,dj;//yd==yes day==打卡连续天数,nd==no day==连续遗漏天数,d==dian==点数==活跃值,dj==dian(shu)(zeng)jia==点数增加==每天增加的活跃值
int main()
{
cin >>n;
for (int i=1;i<=n;i++)
{
cin >>a[i];
if (a[i]==1)
{
if (a[i-1]==0)
{
if (yd-pow(2,nd-1)>0) yd-=pow(2,nd-1);
else yd=0;
nd=0;
}
yd++;
switch(yd)
{
case 1:dj=1;
case 3:dj=2;
case 7:dj=3;
case 30:dj=4;
case 120:dj=5;
case 365:dj=6;
}
d+=dj;
}
else {nd++;yd=0;}
}
cout <<d<<endl;
return 0;
}
样例48 QwQ