Pagini recente » Cod sursa (job #1817109) | Cod sursa (job #2386050) | Cod sursa (job #2295780) | Cod sursa (job #1535526) | Cod sursa (job #2059686)
#include<iostream>
#include<fstream>
using namespace std;
int fuvar(int v,int a[16000],int n, int k){
int u=0,db=1;
for( int i = 0; i < n; i++){
if(a[i]>v){return 0;}
if(u+a[i]<=v){
u+=a[i];
}
else{
u=0;
db++;
i--;
}
if(db>k){return 0;}
}
return 1;
}
int main(){
int n,k,a[16000], N = 256000000;
ifstream fin;
fin.open("bemenet.txt");
if(!fin.is_open())
{
return 12;
}
fin >> n;
fin >> k;
for( int i = 0; i < n; i++){
fin >> a[i];
}
fin.close();
int ah = 0,fh = N,kozep;
while(ah < fh){
kozep =(ah + fh)/2;
if(fuvar(kozep,a,n,k)){
fh = kozep ;
}
else{
ah=kozep + 1;
}
}
cout << kozep;
return 0;
}