Pagini recente » Cod sursa (job #244931) | Cod sursa (job #2327991) | Cod sursa (job #438175) | Cod sursa (job #338701) | Cod sursa (job #2026026)
#include <bits/stdc++.h>
using namespace std;
ifstream in("transport.in");
ofstream out("transport.out");
int n,k,a[16009], cmax;
void read()
{
in >> n >> k;
for( int i=1; i<=n; i++)
in >> a[i] ;
}
int ture( int c )
{
int tr = 1, one =0;
for(int i=1; i<=n; i++)
{
one +=a[i];
if ( one > c )
{
tr++ ;
one = a[i];
}
}
return tr;
}
int caut( int st, int dr, int x)
{
int mid, save = 0;
while ( st <= dr )
{
mid = ( st+dr ) /2;
if ( x < ture(mid) ) st = mid + 1; else dr = mid - 1;
if ( x >= ture(mid) ) save = mid;
}
return save;
}
int main()
{
read();
out << caut(1,16000*16000,k);
return 0;
}