SHARE
TWEET

Untitled

a guest Feb 27th, 2020 68 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2.  
  3. namespace _03._School_Library
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             int playerPoints = 0;
  10.  
  11.             string targets = Console.ReadLine();
  12.  
  13.             string[] targetsArray = targets.Split('|');
  14.             int[] targetsArrayInt = new int[targetsArray.Length];
  15.             for (int i = 0; i < targetsArray.Length; i++)
  16.             {
  17.                 targetsArrayInt[i] = int.Parse(targetsArray[i]);
  18.             }
  19.  
  20.             string command = Console.ReadLine();
  21.  
  22.             while (command != "Game over")
  23.             {
  24.                 string[] commandArray = command.Split();
  25.  
  26.                 switch (commandArray[0])
  27.                 {
  28.                     case "Shoot":
  29.                         switch (commandArray[1][0])
  30.                         {
  31.                             case 'L':
  32.                                 string[] commandLeft = commandArray[1].Split('@');
  33.                                 int startIndexLeft = int.Parse(commandLeft[1]);
  34.                                 int lengthLeft = int.Parse(commandLeft[2]);
  35.  
  36.                                 if (startIndexLeft >= 0 && startIndexLeft < targetsArrayInt.Length)
  37.                                 {
  38.                                     for (int i = 0; i < lengthLeft; i++)
  39.                                     {
  40.                                         startIndexLeft--;
  41.                                         if (startIndexLeft == -1)
  42.                                         {
  43.                                             startIndexLeft = targetsArrayInt.Length - 1;
  44.                                         }
  45.                                     }
  46.                                     if (targetsArrayInt[startIndexLeft] - 5 >= 5)
  47.                                     {
  48.                                         targetsArrayInt[startIndexLeft] -= 5;
  49.                                         playerPoints += 5;
  50.                                     }
  51.                                     else if (targetsArrayInt[startIndexLeft] - 5 < 5)
  52.                                     {
  53.                                         playerPoints += targetsArrayInt[startIndexLeft];
  54.                                         targetsArrayInt[startIndexLeft] = 0;
  55.                                     }
  56.                                 }
  57.                                 break;
  58.                             case 'R':
  59.                                 string[] commandRight = commandArray[1].Split('@');
  60.                                 int startIndexRight = int.Parse(commandRight[1]);
  61.                                 int lengthRight = int.Parse(commandRight[2]);
  62.  
  63.                                 if (startIndexRight >= 0 && startIndexRight < targetsArrayInt.Length)
  64.                                 {
  65.                                     for (int j = 0; j < lengthRight; j++)
  66.                                     {
  67.                                         startIndexRight++;
  68.                                         if (startIndexRight == targetsArrayInt.Length)
  69.                                         {
  70.                                             startIndexRight = 0;
  71.                                         }
  72.                                     }
  73.                                     if (targetsArrayInt[startIndexRight] - 5 >= 5)
  74.                                     {
  75.                                         targetsArrayInt[startIndexRight] -= 5;
  76.                                         playerPoints += 5;
  77.                                     }
  78.                                     else if (targetsArrayInt[startIndexRight] - 5 < 5)
  79.                                     {
  80.                                         playerPoints += targetsArrayInt[startIndexRight];
  81.                                         targetsArrayInt[startIndexRight] = 0;
  82.                                     }
  83.                                 }
  84.                                 break;
  85.                         }
  86.                         break;
  87.                     case "Reverse":
  88.                         int[] temp = new int[targetsArrayInt.Length];
  89.                         int num = 0;
  90.                         for (int i = targetsArrayInt.Length - 1; i >= 0; i--)
  91.                         {
  92.                             temp[num] = targetsArrayInt[i];
  93.                             num++;
  94.                         }
  95.                         targetsArrayInt = temp;
  96.                         break;
  97.                 }
  98.  
  99.                 command = Console.ReadLine();
  100.             }
  101.  
  102.             Console.WriteLine(string.Join(" - ", targetsArrayInt));
  103.             Console.WriteLine($"Iskren finished the archery tournament with {playerPoints} points!");
  104.         }
  105.     }
  106. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top