#include <iostream>

using namespace std;


int find_max_forward(int* data, int count, int max)

{

    if(count < 1) return max;

    return find_max_forward(data + 1, count - 1, max < data[0]? data[0]: max);

}


void find_discord_forward(int* data, int count, int& x, int& y)

{

    if(count < 2) return;

    int yy = find_max_forward(data, count, y);

    if(yy - data[0] > y - x)

    {

        x = data[0];

        y = yy;

    }

    find_discord_forward(data + 1, count - 1, x, y);

}


#define ARRAY_SIZE  8000

int main(void)

{

    int data[ARRAY_SIZE];

    for(int i = 0; i < ARRAY_SIZE; ++i)

        data[i] = rand() % 30;

    data[ARRAY_SIZE - 2] = 0;

    data[ARRAY_SIZE - 1] = 30;

    int x, y;

    find_discord_forward(data, sizeof(data) / sizeof(data[0]), x = data[0], y = data[1]);

    return 0;

}


대충 20만개 정도는 커버