/*
 * 04.c
 *
 *  Created on: 2016/03/29
 *      Author: yui
 */


#include<stdio.h>

int main(void)
{
	int max=0;
	int i, j, n, k, p;
	scanf("%d", &n);
	scanf("%d", &k);

	int w[n];  /*?????????????????????????´???????*/
	for(i=0;i<n;i++)
	{
		scanf("%d",&w[i]);
		if(max<w[i])
		{
			max=w[i];
		}
	}

	int K[k];

	for(p=max;p<100;p++)  /*????????????????????§?????????????????????????????????????????????????????????????¢???????*/
	{
		for(i=0;i<k;i++)
		{
			K[i]=0;
		}
		i=0;
		for(j=0;j<n&&i<k;j++)
		{
			if(K[i]+w[j]<=p)
			{
				K[i]=K[i]+w[j];
			}
			else
			{
				i++;
				j--;
			}

		}
		if(j==n)  /*??¨????????????????????£????????????*/
		{
			printf("%d?\n",p);
			return 0;
		}
	}
	return 0;
}