Pagini recente » Cod sursa (job #8983) | Cod sursa (job #100289) | Cod sursa (job #964871) | Cod sursa (job #1693115) | Cod sursa (job #2538813)
#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