import sys input = sys.stdin.readline N,L=list(map(int,input().split())) K=int(input()) A=list(map(int,input().split())) A=[0]+A+[L] OK=1 NG=L+1 while NG>OK+1: mid=(OK+NG)//2 DP0=[-1<<30]*len(A) DP1=[-1<<30]*len(A) DP2=[-1<<30]*len(A) DP0[0]=0 k=0 for i in range(len(A)-1): x=DP0[i] DP0[i+1]=max(DP0[i+1],x+1) while k=K+1: OK=mid else: NG=mid #print(mid) #print(DP0) #print(DP1) #print(DP2) print(OK)