194712025-12-10 10:09:21birozsSípálya (55 pont)pypy3Time limit exceeded 21/55504ms47956 KiB
N,K=map(int,input().split())
T = list(map(int,input().split()))
fold = 0
m = T[0]
for i in range(1,K):
    if T[i] > m - 1:
        fold += (T[i] - (m-1)) * i
        m = T[i]
    else:
        fold += m - 1 - T[i]
        m = m - 1
min = N * 10**9
for i in range(1,N-K+1):
    if T[i-1] <= T[i] and T[i+K-1] < m:
        fold -= m + K - 1 - T[i-1]
        m = m - 1
        fold += m - T[i+K-1]
    else:
        fold = 0
        m = T[i]
        for j in range(i,i+K):
            if T[j] > m - 1:
                fold += (T[j] - (m-1)) * (j-i)
                m = T[j]
            else:
                fold += m - 1 - T[j]
                m = m - 1
    if fold < min:
        min = fold
print(min)


    

SubtaskSumTestVerdictTimeMemory
base21/55
1Accepted0/043ms19672 KiB
2Accepted0/043ms19628 KiB
3Accepted2/252ms21688 KiB
4Accepted2/256ms21704 KiB
5Accepted2/261ms21808 KiB
6Accepted2/264ms21832 KiB
7Accepted3/352ms21588 KiB
8Accepted1/175ms22560 KiB
9Accepted1/183ms22452 KiB
10Accepted1/190ms22492 KiB
11Accepted1/1115ms22316 KiB
12Accepted1/1118ms22244 KiB
13Accepted1/1210ms22400 KiB
14Accepted2/2239ms22408 KiB
15Accepted2/2114ms22356 KiB
16Time limit exceeded0/2503ms46616 KiB
17Time limit exceeded0/2493ms46700 KiB
18Time limit exceeded0/2490ms46704 KiB
19Time limit exceeded0/3490ms46676 KiB
20Time limit exceeded0/2493ms46672 KiB
21Time limit exceeded0/2488ms46712 KiB
22Time limit exceeded0/2472ms46680 KiB
23Time limit exceeded0/2504ms46680 KiB
24Time limit exceeded0/2486ms47956 KiB
25Time limit exceeded0/2486ms46756 KiB
26Time limit exceeded0/2488ms46672 KiB
27Time limit exceeded0/2483ms46736 KiB
28Time limit exceeded0/3486ms46716 KiB
29Time limit exceeded0/3488ms46688 KiB
30Time limit exceeded0/3486ms46676 KiB