Pagini recente » Cod sursa (job #1931342) | Cod sursa (job #1103038) | Cod sursa (job #2328820) | Cod sursa (job #2347671) | Cod sursa (job #710258)
Cod sursa(job #710258)
#include<iostream>
#include<fstream>
using namespace std;
int v[16001],n,k;
int verif(int x)
{
int transp,j,i;
for(j=1,i=1;i<=k&&j<=n;i++)
{
transp=x;
while(transp>=v[j]&&j<=n)
{
transp-=v[j];
j++;
}
}
if(j==n+1)
return 1;
else return 0;
}
int main()
{
ifstream g("transport.in");
ofstream h("transport.out");
int min=0, max=16000,poz,ult;
g>>n>>k;
for(int i=1;i<=n;i++)
{
g>>v[i];
if(v[i]>min) min=v[i];
}
while(min!=max)
{
poz=(min+max)/2;
if(verif(poz))
{
max=poz;
ult=poz;
}
else
min=poz+1;
}
h<<ult+1;
}