Cod sursa(job #2763774)
| Utilizator | Data | 16 iulie 2021 18:12:19 | |
|---|---|---|---|
| Problema | Secventa 2 | Scor | 90 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.63 kb |
#include <fstream>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int n, v[50005], k;
long long int sc, smax = - 2500000000005;
int st, dr;
int main() {
fin >> n >> k;
for(int i = 1; i <= n; i++) {
fin >> v[i];
}
fin.close();
st = 1;
for(int i = 1; i <= n; i++) {
sc += (1LL * v[i]);
if(sc > smax && i - st + 1 >= k) {
smax = sc;
dr = i;
}
if(sc < 0) {
sc = 0;
st = i + 1;
}
}
fout << st << " " << dr << " " << smax;
fout.close();
return 0;
}