#include #include int main(int argv, char ** argc){ /* para leitura e escrita */ int intervalo = 0, numerovalores = 0, i = -1, j = 0, temp = -1; int *vector_p0, *vector_p1; /* para a segunda parte do projecto */ int pointer = 0, valor = 0, x = 0, y = 0, aux = 0; scanf("%d", &intervalo); /* lê o número de anos do intervalo */ scanf("%d", &numerovalores); /* lê o número total de papas... */ vector_p0 = malloc( sizeof(int) * numerovalores); // contém o próprio número vector_p1 = malloc( sizeof(int) * numerovalores); // contém as ocorrências for (j = 0; j < numerovalores; ++j){ scanf("%d", &valor); if( temp == valor ) ++ vector_p1[i]; else { ++i; vector_p0[i] = valor; vector_p1[i] = 1; } temp = valor; } ++i; vector_p0[i] = -1; vector_p1[i] = -1; i = 0; while( vector_p0[i] != -1){ ++i; } valor = 0; while( vector_p1[pointer + intervalo] != -1){ for (i = 0, aux = 0; vector_p0[pointer] + intervalo > vector_p0[pointer + i] ; ++i ) aux += vector_p1[pointer + i]; if ( aux > valor ){ valor = aux; x = vector_p0[pointer]; y = vector_p0[pointer+i -1]; } ++ pointer; } printf("%d %d %d \n", valor, x, y); return 1; }