求助,全部超时
day = int(input())
v1, v3, v7, v30, v120, v365 = map(int, input().split())
sign = []
for i in range(day):
sign.append(int(input()))
counters = []
counter = 0
for j in sign:
if j == 1:
counter += 1
elif j == 0:
counters.append(counter)
counter = 0
continue
counters.append(counter)
def count(n):
if n in range(1, 3):
return n*v1
elif n in range(3, 7):
return 2*v1 + (n-2)*v3
elif n in range(7, 30):
return 2*v1 + 4*v3 + v7*(n-6)
elif n in range(30, 120):
return 2*v1 + 4*v3 + 23*v7 + v30*(n-29)
elif n in range(120, 365):
return 2*v1 + 4*v3 + 23*v7 + v30*90 + v120*(n-119)
elif n >= 365:
return 2*v1 + 4*v3 + 23*v7 + v30*90 + v120*245 + v365(n-364)
else:
return 0
re = 0
for j in counters:
re += count(j)
print(re)