Advertisement
desislava_topuzakova

01. Basic Stack Operations

May 17th, 2022
816
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace CSharpAdvancedMay2022
  6. {
  7.     internal class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.  
  12.             int[] numbers = Console.ReadLine()    //"5 2 13"
  13.                             .Split(' ')           //["5", "2", "13"]
  14.                             .Select(x => int.Parse(x)) //[5, 2, 13]
  15.                             .ToArray();
  16.             int n = numbers[0];
  17.             int s = numbers[1];
  18.             int x = numbers[2];
  19.  
  20.             List<int> numbersList = Console.ReadLine() // "1 13 45 32 4"
  21.                                     .Split(' ')        //["1", "13", "45", "32", "4"]
  22.                                     .Select(x => int.Parse(x)) //[1, 13, 45, 32, 4]
  23.                                     .ToList();          // {1, 13, 45, 32, 4}
  24.  
  25.             Stack<int> stack = new Stack<int>(); //нов празен стек
  26.  
  27.             //N -> броят на елементите push
  28.             for (int i = 0; i < n; i++)
  29.             {
  30.                 stack.Push(numbersList[i]);
  31.             }
  32.  
  33.             //S -> броят на елементите pop
  34.             for (int i = 0; i < s; i++)
  35.             {
  36.                 stack.Pop();
  37.             }
  38.  
  39.             //X -> потърсим в стек
  40.             if (stack.Count == 0) //празен стек
  41.             {
  42.                 Console.WriteLine(0);
  43.             }
  44.             else if (stack.Contains(x))
  45.             {
  46.                 Console.WriteLine("true");
  47.             }
  48.             else
  49.             {
  50.                 Console.WriteLine(stack.Min()); //най-малкия елемент в стека
  51.             }
  52.  
  53.         }
  54.     }
  55. }
Advertisement
RAW Paste Data Copied
Advertisement