Cod sursa(job #2538813)

Utilizator Robert975Robert Robert975 Data 5 februarie 2020 10:21:26
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("secventa.in");
ofstream fout("secventa.out");
  int v[500000], c[500000];

  int min(int i, int j) {
    int l;
    int min = v[i];
    for (l = i; l <= j; l++)
      if (v[l] < min)
        min = v[l];

    return min;
  }

int main () {
  int n, k, i, j, l, Min, copy, Copy;
  fin>>n>>k;

  for (i = 1; i <= n; i++)
    fin>>v[i];

  Min = v[1];
  j = k;
  for (i = 1; i <= n - k + 1; i++)
  {
    if (min(i, j) > Min)
    {
      Min = min(i, j);
      copy = i;
    }
        ++j;
  }

  Copy = copy + k - 1;
  while (copy >= 1 && v[copy - 1] > Min)
    --copy;

  while (Copy < n && v[copy + 1] > Min)
    ++Copy;

  fout<<copy<<" "<<Copy<<" "<<Min;

}

// -1 2 3 1 0 4 8 6
//  1 2 3 4 5 6 7 8