ALGUIEN QUE ME PUEDA EXPLICAR
--------------------------------------------------------------------------------------------------------
Descripción
Considera una pila de enteros que tiene dos operaciones: mete(a) introduce el entero a en la pila y saca(a) elimina los a enteros en el tope de la pila (suponiendo que hay suficientes). Se tiene un entero n y un vector a con n enteros positivos a1,a2,...,an Escribe un programa que comience con una pila vacia y que procese uno por uno los elementos de a (comenzando con a1) de la siguiente forma: si al procesar el elemento ai la pila tiene menos de ai elementos entonces mete(ai), de lo contrario saca(ai). Por ejemplo, si n=7 y a=(2,7,1,8,2,8,2) entonces se realizan las operaciones mete(2), mete(7), saca(1), mete(8), saca(2), mete(8) y mete(2), quedando 2 y 8 en la pila. Tu programa debe encontrar la cantidad p de elementos que quedan en la pila y el orden en el que estos saldran si los eliminaramos uno por uno.
Entrada
Un numero entero n seguido de un renglon con n numeros enteros a1,a2,...,an separados por espacios. Puedes suponer que todos los enteros involucrados valen de 1 a 1000.
Salida
Un numero entero p seguido de un renglon con p numeros enteros.
EJEMPLO:
Entrada Salida
2 7 1 8 2 8 2 2 8