Pagini recente » Cod sursa (job #282789) | Profil beer_team | Cod sursa (job #1979054) | Cod sursa (job #2748637) | Cod sursa (job #3293914)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("transport.in");
ofstream fout("transport.out");
int d,v[16003],maxi,sum,n;
int numara_drumuri(int capca) {
int nrd=0,s=0;
for (int i=0; i<n;) {
///pregatim un drum
while (s+v[i]<=capca) {
s+=v[i]; /// punem o saltea
i++; /// trecem la urmatoarea saltea
}
nrd++;
s=0;
}
return nrd;
}
int main()
{
int solutie;
fin>>n>>d;
for (int i=0; i<n; i++) {
fin>>v[i];
if (v[i] > maxi) {
maxi=v[i];
}
sum+=v[i];
}
for (int i=maxi; i<=sum; i++) {
if (numara_drumuri(i)<=d) {
solutie=i;
break;
}
}
fout<<solutie;
return 0;
}