from collections import deque n,k,m=map(int,input().split()) a=list(map(int,input().split())) s=[0]*(n+1) for i in range(n):s[i+1]=s[i]+a[i] def push(q,i,val): while q and q[-1][-1]<=val:q.pop() q.append((i,val)) dp=[0]+[-1]*n for _ in range(k): q1=deque() q2=deque() ndp=[-1]*(n+1) for i in range(n+1): if q1 and q1[0][0]