Cod sursa(job #1448697)

Utilizator GeiGeiGeorge Cioroiu GeiGei Data 7 iunie 2015 19:57:05
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
//0014
#include <cstdio>
#include <deque>
#include <algorithm>

using namespace std;

int f(deque<int> s) {
    int ans = -30000;
    for (int i = 0; i < s.size(); i++) {
        if (s[i] > ans) {
            ans = s[i];
        }
    }
    return ans;
}

int main() {
    FILE* fi = fopen("secventa.in", "rt");
    FILE* fo = fopen("secventa.out", "wt");

    int n, k;
    fscanf(fi, "%d%d", &n, &k);
    deque<int> s;

    for (int i = 0; i < k; i++) {
        int aux;
        fscanf(fi, "%d", &aux);
        s.push_back(aux);
    }

    int vm = f(s), st = 0;
    for (int i = 1; i < n - k; i++) {
        s.pop_front();
        int aux;
        fscanf(fi, "%d", &aux);
        s.push_back(aux);
        int x = f(s);
        if (x > vm) {
            st = i;
            vm = x;
        }
    }

    fprintf(fo, "%d %d %d", st, st + k - 1, vm);

    return 0;
}