Pagini recente » Cod sursa (job #607137) | Cod sursa (job #2604291) | Cod sursa (job #1598871) | Cod sursa (job #3289274) | Cod sursa (job #2156012)
#include<fstream>
using namespace std;
ifstream fin("transport.in");
ofstream fout("transport.out");
int n,m,i,j,k,q,sum,st,dr,mid,s;
int v[16005];
int main(){
fin>>n>>k;
for(i=1;i<=n;i++){
fin>>v[i];
sum+=v[i];
}
st=1;
dr=sum+1;
while(st<=dr){
q=0;
mid=(st+dr)/2;
s=0;
i=0;
while(i<=n&&q<=k){
while(s+v[i+1]<=mid&&i<=n){
s+=v[i+1];
i++;
}
s=0;
q++;
}
if(q<=k){
dr=mid-1;
}
else{
st=mid+1;
}
}
fout<<st;
return 0;
}