Cod sursa(job #1021212)
| Utilizator | Data | 3 noiembrie 2013 15:02:59 | |
|---|---|---|---|
| Problema | Transport | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.59 kb |
#include<iostream>
#include<fstream>
using namespace std;
int main(){
ifstream f("transport.in");
int n = 0, k = 0;
f >> n >> k;
int saltele[16000];
int max = 0;
for (int i = 0; i < n; i++){
f>>saltele[i];
if (saltele[i]>max){
max = saltele[i];
}
}
int s = saltele[0], l = 0;
for (int i = 1; i < n; i++){
if (s + saltele[i] <= max){
s += saltele[i];
}
else{
if (l < k-1){
s = saltele[i];
l++;
}
else{
l = 0;
i = 1;
s = saltele[0];
max++;
}
}
}
ofstream o("transport.out");
o << max;
return 0;
}