Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include "Pila.h"
- #define MAX 10
- int main(int argc, char** argv) {
- TPila P;
- TPila AUX;
- int ncasos,stack,ncarrosmov;
- TElemento car,caraux;
- char sit;//sitva a ser L o S
- scanf("%d\n",&ncasos);
- stack=0;
- while (ncasos--){
- scanf("%c",&sit);
- scanf("%d\n",&car);
- //Si llega un carro
- if (sit=='L'){
- //Ingresará si hay menos de 10 carros en el estacionamiento
- if (stack<MAX){
- printf("Hay vacante %d\n",car);
- Pila_push(&P,car);
- stack++;
- }
- else{
- printf("No hay vacante para %d\n",car);
- }
- }
- //Si sale un carro
- if (sit=='S'){
- ncarrosmov=0;
- //DEsapilamos hasta encontrar el carro
- caraux=Pila_pop(&P);
- while (caraux!=car){
- Pila_push(&AUX,caraux);
- ncarrosmov++;
- caraux=Pila_pop(&P);
- }
- printf("%d carros movidos\n",ncarrosmov);
- stack--;
- //Volvemos a apilar
- while(ncarrosmov--){
- Pila_push(&P, Pila_pop(&AUX));
- }
- }
- }
- return (EXIT_SUCCESS);
- }
Advertisement
Add Comment
Please, Sign In to add comment