#include <stdio.h> #include <stdint.h> #include <string.h> #define MAX 10 void process_stack(int n) { // Your logic here int s[MAX]; char cmd[5]; int idx=-1; int val; for(int i=0;i<n;i++) { scanf("%s",cmd); if(cmd[1]=='u') { scanf("%d",&val); if(idx>=MAX-1){printf("Stack Overflow\n");} else{s[++idx]=val;} } if(cmd[1]=='o') { if(idx==-1){printf("Stack Underflow\n");} else{printf("%d\n",s[idx]); idx--;} } } } int main() { int n; scanf("%d", &n); getchar(); // Consume newline after number process_stack(n); return 0; }
Test Cases
Test Results
Input
5 push 10 push 20 pop pop pop
Expected Output
20 10 Stack Underflow