Pagini recente » Cod sursa (job #1646947) | Cod sursa (job #2188318) | Cod sursa (job #1100106) | Cod sursa (job #731561) | Cod sursa (job #323249)
Cod sursa(job #323249)
#include<fstream>
#define maxn 17000
using namespace std;
ifstream f("transport.in");
ofstream g("transport.out");
int a[maxn],stiva[maxn],i,j,k,n,step,p;
int calc(int k)
{
int i=1,t=0,r=0;
while(i<=n)
{
if(a[i]+t>k)
{
++r;
t=0;
}
t+=a[i];
++i;
}
++r;
return r;
}
int main()
{
f>>n>>k;
for(i=1;i<=n;++i)
f>>a[i];
j=16000;
for(step=1;step<j;step<<=1);
for(i=0;step;step>>=1)
if(i+step<=j&&calc(i+step)>k)
i+=step;
while(calc(i)>k) ++i;
g<<i<<"\n";
f.close();
g.close();
return 0;
}