Pagini recente » Cod sursa (job #1810470) | Cod sursa (job #2775063) | Cod sursa (job #2448061) | Cod sursa (job #3129062) | Cod sursa (job #2837915)
#include <iostream>
#include <iomanip>
#include <fstream>
#include <deque>
using namespace std;
ifstream fin("transport.in");
ofstream fout("transport.out");
const int N = 16000;
long long n, i, k, l, r, mid, ans, s, nr;
long long v[N];
int main()
{
fin >> n >> k;
for(i = 1; i <= n; i++)
fin >> v[i];
l = 1; r = 2e9;
while(l <= r){
mid = l + (r - l) / 2;
i = 1;
nr = 0;
while(i <= n && nr <= k){
s += v[i];
if(s > mid) s = 0, nr++;
else i++;
}
// fout << nr << " " << mid << "\n";
if(nr <= k) ans = mid, r = mid - 1;
else l = mid + 1;
}
fout << ans;
return 0;
}