Advertisement
Spocoman

03. Maximum and Minimum Element

Jan 11th, 2024
902
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.14 KB | None | 0 0
  1. #include <iostream>
  2. #include <stack>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7.     int n, command, number;
  8.     cin >> n;
  9.  
  10.     stack<int> numbers, s;
  11.  
  12.     for (int i = 0; i < n; i++) {
  13.         cin >> command;
  14.  
  15.         if (command == 1) {
  16.             cin >> number;
  17.             numbers.push(number);
  18.         }
  19.         else if (numbers.size() > 0) {
  20.  
  21.             if (command == 2) {
  22.                 numbers.pop();
  23.             }
  24.             else {
  25.                 int max = -2147483646, min = 2147483647;
  26.  
  27.                 s = numbers;
  28.                 while (s.size() != 0) {
  29.                     if (s.top() > max) {
  30.                         max = s.top();
  31.                     }
  32.                     if (s.top() < min) {
  33.                         min = s.top();
  34.                     }
  35.                     s.pop();
  36.                 }
  37.  
  38.                 cout << (command == 3 ? max : min) << endl;
  39.             }
  40.         }
  41.     }
  42.  
  43.     if (numbers.size() > 0) {
  44.         while (numbers.size() != 1) {
  45.             cout << numbers.top() << ", ";
  46.             numbers.pop();
  47.         }
  48.         cout << numbers.top() << endl;
  49.     }
  50.    
  51.     return 0;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement