#include
#include
#include
#include
using namespace std;
class Solution{
public:
int banana(vector arr,int h)
{
int len=arr.size();
int mid;
sort(arr.begin(),arr.end());
int l=0,r=arr[len-1];
mid=l+(r-l)/2;
while(l!=r)
{
int count=0;
for(int i=0;i
{
if(arr[i]/mid==0)
{
count++;
}
else{
if(arr[i]%mid==0)
{
count+=arr[i]/mid;
}
else{
count+=arr[i]/mid+1;
}
}
}
if(count>h)
{
l=mid+1;
mid=l+(r-l)/2;
}
else
{
r=mid;
mid=l+(r-l)/2;
}
}
return r;
}
};
int main()
{
string str;
vector nums;
while(cin >> str)
{
int sum = 0;
int target;
for(int i = 1; i
{
if(str[i] != ',' && str[i] != ']' && str[i] != ';')
{
int num = str[i] - '0';
sum = sum * 10 + num;
}
else if(str[i] == ',' || str[i] == ']')
{
nums.push_back(sum);
sum = 0;
}
else if(str[i] == ';')
{
int j = i + 1;
int a = 0;
while(j
{
int b = str[j] - '0';
a = a * 10 + b;
j++;
}
target = a;
break;
}
}
Solution s;
auto str=s.banana(nums,target);
cout<
}
return 0;
}