Advertisement
Spocoman

03. Memory Game

Nov 5th, 2023 (edited)
700
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.69 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3. using System.Collections.Generic;
  4.  
  5. namespace MemoryGame
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             var game = Console.ReadLine().Split(' ').ToList();
  12.             int counter = 1;
  13.             string command;
  14.  
  15.             while ((command = Console.ReadLine()) != "end")
  16.             {
  17.                 var index = command.Split(' ').Select(int.Parse).OrderBy(x => x).ToArray();
  18.  
  19.                 if (index[0] >= 0 && index[0] < game.Count && index[1] >= 0 && index[1] < game.Count && index[0] != index[1])
  20.                 {
  21.                     if (game[index[0]].Equals(game[index[1]]))
  22.                     {
  23.                         Console.WriteLine($"Congrats! You have found matching elements - {game[index[0]]}!");
  24.                         game.RemoveAt(index[1]);
  25.                         game.RemoveAt(index[0]);
  26.                         if (game.Count == 0)
  27.                         {
  28.                             Console.WriteLine($"You have won in {counter} turns!");
  29.                             Environment.Exit(0);
  30.                         }
  31.                     }
  32.                     else
  33.                     {
  34.                         Console.WriteLine("Try again!");
  35.                     }
  36.                 }
  37.                 else
  38.                 {
  39.                     Console.WriteLine("Invalid input! Adding additional elements to the board");
  40.                     game.InsertRange(game.Count / 2, new List<string> { $"-{counter}a", $"-{counter}a" });
  41.                 }
  42.                 counter++;
  43.             }
  44.  
  45.             Console.WriteLine($"Sorry you lose :(\n{string.Join(" ", game)}");
  46.         }
  47.     }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement