Cod sursa(job #811865)

Utilizator DevilShadowJunc Raul Cosmin DevilShadow Data 13 noiembrie 2012 01:53:28
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <iostream>
#include <fstream>
#define min(a, b) (a < b) ? a : b
using namespace std;

int n, k, a[1000000];
ifstream f("secventa.in");
ofstream g("secventa.out");

void create()
{
    int nr0 = n, nr1 = n;
    for(int i = 0; i <= n; i ++)
        f >> a[i];
    for(int i = n; i < ((n + 1) * n) / 2; i ++)
    {
        if(nr0 == nr1)
        {
            nr0 --;
            nr1 = 0;
        }
        nr1 ++;

        a[i] = min( a[i - nr0 - 1], a[i - nr0] );
    }
}

int main()
{


    f >> n >> k;
    create();
    int c = 0;
    int C, max, index;
    for(int i = 0; i < k - 1; i ++)
    {
        c += n - i;
        C = c + n - i - 1;
    }

    max = a[c];

    for( ; c < C; c ++)
        if(max < a[c])
        {
            max = a[c];
            index = c;
        }
    while(c > n)
    {
        c -= n;
        n --;
    }
    g << c << ' ' << c + k - 1 << ' ' << max;
    return 0;
}