import sys def main(): N, K = map(int, sys.stdin.readline().split()) A = list(map(int, sys.stdin.readline().split())) if K == 0: print(0) return if K >= N: print(min(A)) return def is_possible(mid): count = 0 current_sum = 0 for num in A: current_sum += num if current_sum >= mid: count += 1 current_sum = 0 if count >= K: return True return False low = 1 high = sum(A) ans = 0 while low <= high: mid = (low + high) // 2 if is_possible(mid): ans = mid low = mid + 1 else: high = mid - 1 print(ans) if __name__ == "__main__": main()