Cod sursa(job #2637974)

Utilizator alex.prohnitchiAlex Prohnitchi alex.prohnitchi Data 26 iulie 2020 09:43:33
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.96 kb
#pragma GCC optimize("Ofast")
#include <bits/stdc++.h>

typedef long long ll;

const ll mod=1e9+7;

const int dx[] = {0, 1, 0, -1};
const int dy[] = {1, 0, -1, 0};
const ll inf=2e18;

#define all(x) x.begin(),x.end()
#define allr(x) x.rbegin(),x.rend()
#define rc(x)  return cout<<x<<"\n",0
#define sz(s)  (int) s.size()
#define pb push_back
#define mp make_pair
#define fr first
#define sc second
#define PI 3.14159265358979

using namespace std;

ll t;

int main() {
ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
	ifstream cin("secv2.in");
	ofstream cout("secv2.out");
	ll n,k;
	cin >> n >> k;
	ll sum[n+3],mn=inf,mx=-inf;
	ll pos=1,st=1,dr=1;
	for (int i=1; i<=n; i++) {
		ll x;
		cin >> x;
		sum[i]=sum[i-1]+x;
	}
	for (int i=k; i<=n; i++) {
		if (sum[i-k]<mn) {
			mn=sum[i-k];
			pos=i-k+1;
		}
		if (sum[i]-mn>mx) {
			mx=sum[i]-mn;
			st=pos;
			dr=i;
		}
	}
	cout << st << " " << dr << " " << mx << '\n';

}