Pagini recente » Cod sursa (job #305905) | Cod sursa (job #3042101) | Cod sursa (job #589597) | Cod sursa (job #414771) | Cod sursa (job #811865)
Cod sursa(job #811865)
#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;
}