/*
 * test1.cpp
 *
 *  Created on: 2010-4-8
 *      Author: zhanghan
 */
#include 
using namespace std;
//这道题的思路就是用二分查找,在进行二分查找的时候可以用一点小技巧,就是每次把一个界增加1或者减少1,可以便面某些边界条件的判断
int len[10001]={};
int n,k;
int input()
{
    cin>>n>>k;
    int max=0;
    for(int i=0;i>len[i];
    	if(len[i]>max)
    		max=len[i];
    }
    return max;
}
int solve(int max)
{
    int l = 1;
    int r = max;

    while(l<=r)//只有当l>r的时候才会跳出循环
    {
        int mid = (l+r)/2;
        int sum = 0;
        for(int i=0;i=k) l = mid+1;//说明需要的长度不少于mid,然后把新的左边界定位mid+1
    }
    return r;//最后的结果
}

int main()
{
    int p=input();
    cout<