Cod sursa(job #1976482)
Utilizator | Data | 3 mai 2017 15:35:15 | |
---|---|---|---|
Problema | Transport | Scor | 40 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.78 kb |
#include <fstream>
using namespace std;
int n,k,c,s[16004],tr=0,ct=0,maxim=0,suma=0;
int main()
{
ifstream fin("transport.in");
ofstream fout("transport.out");
fin>>n>>k;
for(int i=1; i<=n; i++)
{
fin>>s[i];
if(maxim<s[i]) maxim=s[i];
suma+=s[i];
}
c=maxim;
do
{
for(int i=1; i<=n; i++)
{
tr+=s[i];
if(tr>c)
{
i--;
tr=0;
ct++;
if(ct>k)
{
c++;
break;
}
}
}
if(ct<k)
{
fout<<c;
return 0;
}
if(ct>k) ct=0;
}
while(c<suma);
}