Cod sursa(job #709168)

Utilizator ady_92cChioran Adrian ady_92c Data 7 martie 2012 19:23:19
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
//============================================================================
// Name        : sq.cpp
// Author      : 
// Version     :
// Copyright   : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================

#include <iostream>
#include <fstream>
using namespace std;



int findmax(long int v[],int p){
	int max=0;
	for (int i=0;i<p;i++){
		if (v[max]<v[i]){
			max=i;
		}

	}
	return max;
}

int maxim(int a,int b){
	if (a<b){
		return -1;
	}
	return 1;

}

int main(){
	ifstream f("secventa.in");
	ofstream g("secventa.out");
	int n,k;
	f>>n >>k;
	long int v[100];
	for (int i=0;i<n;i++){
		f>>v[i];
	}
	int max=0;
	max = findmax(v,n-k+1);
	int i=0;
	int tr=0;
	while (i<k and tr==0){
		if (v[max-i]<v[max+i]){
			tr=-1;
		}
		else if (v[max+i]<v[max-i]){
			tr=+1;
		}
		i++;
	}
	int dir;
	dir=maxim(v[max],v[max*tr]);
	for (int i=0;(i<k and i>-k);i=i+dir){

		if (dir<0){
			g <<v[max+k+i-1];
		}
		if (dir>0){
			g <<v[max+i];
		}
	}
	f.close();
	g.close();

}