Advertisement
yasenst

Untitled

Jun 30th, 2022
721
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Linq;
  3.  
  4. namespace ProblemSolvingMethods
  5. {
  6.     class Program
  7.     {
  8.         static void Main(string[] args)
  9.         {
  10.             int startingPosition = int.Parse(Console.ReadLine());
  11.             int[] numbers = Console.ReadLine().Split(',').Select(int.Parse).ToArray();
  12.  
  13.             long forwardsSum = 0;
  14.             long backwardsSum = 0;
  15.  
  16.             int index = 0;
  17.  
  18.             string command = Console.ReadLine();
  19.             while (command != "exit")
  20.             {
  21.                 string[] input = command.Split(' ');
  22.                 int step = int.Parse(input[0]);
  23.                 string direction = input[1];
  24.                 int size = int.Parse(input[2]);
  25.  
  26.                 if (direction == "forward")
  27.                 {
  28.                     while (step > 0)
  29.                     {
  30.                         index = startingPosition + size;
  31.                         while (index >= numbers.Length)
  32.                         {
  33.                             index -= numbers.Length;
  34.                         }
  35.  
  36.                         forwardsSum += numbers[index];
  37.                         startingPosition = index;
  38.                         step--;
  39.                     }
  40.                 }
  41.                 else
  42.                 {
  43.                     while (step > 0)
  44.                     {
  45.                         index = startingPosition - size;
  46.                         while (index < 0)
  47.                         {
  48.                             index += numbers.Length;
  49.                         }
  50.  
  51.                         backwardsSum += numbers[index];
  52.                         startingPosition = index;
  53.                         step--;
  54.                     }
  55.                 }
  56.  
  57.                 command = Console.ReadLine();
  58.             }
  59.  
  60.             Console.WriteLine($"Forward: {forwardsSum}");
  61.             Console.WriteLine($"Backwards: {backwardsSum}");
  62.         }
  63.     }
  64. }
  65.  
Advertisement
RAW Paste Data Copied
Advertisement