Advertisement
tsvetelinapasheva

TheLift

Jun 22nd, 2022
920
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.34 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3.  
  4. namespace _02.TheLift.MidExam1
  5. {
  6.     class Program
  7.     {
  8.         static void Main(string[] args)
  9.         {
  10.             int totalPeople = int.Parse(Console.ReadLine());
  11.             int emptySpots = 0;
  12.  
  13.             int[] liftSpots = Console.ReadLine()
  14.                 .Split(" ", StringSplitOptions.RemoveEmptyEntries)
  15.                 .Select(int.Parse)
  16.                 .ToArray();
  17.  
  18.  
  19.  
  20.             emptySpots = (4 * liftSpots.Length) - liftSpots.Sum();
  21.             for (int i = 0; i < liftSpots.Length; i++)
  22.             {
  23.                 if (liftSpots[i] == 4)
  24.                 {
  25.                     continue;
  26.                 }
  27.                 else if (liftSpots[i] == 0)
  28.                 {
  29.                     if (totalPeople < 4)
  30.                     {
  31.                         liftSpots[i] += totalPeople;
  32.                         totalPeople -= totalPeople;
  33.                         emptySpots -= totalPeople;
  34.                     }
  35.                     else
  36.                     {
  37.                         totalPeople -= 4;
  38.                         liftSpots[i] = 4;
  39.                         emptySpots -= 4;
  40.                     }
  41.  
  42.                 }
  43.  
  44.                 else if (liftSpots[i] == 1)
  45.                 {
  46.                     if (totalPeople < 3)
  47.                     {
  48.                         liftSpots[i] += totalPeople;
  49.                         totalPeople -= totalPeople;
  50.                         emptySpots -= totalPeople;
  51.                     }
  52.                     else
  53.                     {
  54.                         totalPeople -= 3;
  55.                         liftSpots[i] = 4;
  56.                         emptySpots -= 3;
  57.                     }
  58.                 }
  59.  
  60.                 else if (liftSpots[i] == 2)
  61.                 {
  62.                     if (totalPeople < 2)
  63.                     {
  64.                         liftSpots[i] += totalPeople;
  65.                         totalPeople -= totalPeople;
  66.                         emptySpots -= totalPeople;
  67.                     }
  68.                     else
  69.                     {
  70.                         totalPeople -= 2;
  71.                         liftSpots[i] = 4;
  72.                         emptySpots -= 2;
  73.                     }
  74.                 }
  75.  
  76.                 else if (liftSpots[i] == 3)
  77.                 {
  78.                     if (totalPeople < 1)
  79.                     {
  80.                         liftSpots[i] += totalPeople;
  81.                         totalPeople -= totalPeople;
  82.                         emptySpots -= totalPeople;
  83.                     }
  84.                     else
  85.                     {
  86.                         totalPeople -= 3;
  87.                         liftSpots[i] = 4;
  88.                         emptySpots -= 3;
  89.                     }
  90.                 }
  91.  
  92.             }
  93.  
  94.             if (totalPeople <= 0 && emptySpots > 0)
  95.             {
  96.                 Console.WriteLine($"The lift has empty spots!\n" +
  97.                     $"{String.Join(" ", liftSpots)}");
  98.             }
  99.             else if (totalPeople > 0 && emptySpots == 0)
  100.             {
  101.                 Console.WriteLine($"There isn't enough space! {totalPeople} people in a queue!\n" +
  102.                     $"{String.Join(" ", liftSpots)}");
  103.             }
  104.             else
  105.             {
  106.                 Console.WriteLine(String.Join(" ", liftSpots));
  107.             }
  108.         }
  109.     }
  110. }
  111.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement