/*
    Veidoja: Emīlija Anna Bukus
    Grupa: 110
    Prakiskais darbs 6.3
    Izmantotais Compiler: www.onlinegdb.com
*/

using System;
using System.Collections.Generic;

class HelloWorld
{
    static void Main()
    {
        int[][] vietas = new int[][]
        {
            new int[] { 0, 0, 0, 0, 0 },
            new int[] { 0, 0, 0, 0, 0, 0, 0 },
            new int[] { 0, 0, 0, 0 }
        };
        
        List<string> rezervacijas = new List<string>();
        RezervetVietas(vietas, rezervacijas);
    }
    
    static void Zale(int[][] vietas)
    {
        Console.WriteLine("Zāles sēdvietas:");
        for (int i = 0; i < vietas.Length; i++)
        {
            Console.Write("Rinda " + (i + 1) + ": ");
            for (int j = 0; j < vietas[i].Length; j++)
            {
                Console.Write(vietas[i][j] == 0 ? "[0]" : "[X]");
            }
            Console.WriteLine();
        }
    }
    
    static void RezervetVietas(int[][] vietas, List<string> rezervacijas)
    {
        int izvele;
        
        do
        {
            Console.WriteLine("Izvēlieties darbību:");
            Console.WriteLine("1 - Parādīt zāli");
            Console.WriteLine("2 - Rezervēt vietu");
            Console.WriteLine("3 - Parādīt rezervācijas");
            Console.WriteLine("4 - Iziet no programmas");
            
            if (!int.TryParse(Console.ReadLine(), out izvele))
            {
                Console.WriteLine("Nepareiza ievade!");
                continue;
            }
            
            switch (izvele)
            {
                case 1:
                    Zale(vietas);
                    break;
                    
                case 2:
                    Console.Write("Ievadiet rindu: ");
                    int r = int.Parse(Console.ReadLine()) - 1;
                    
                    Console.Write("Ievadiet vietu: ");
                    int v = int.Parse(Console.ReadLine()) - 1;
                    
                    if (r >= 0 && r < vietas.Length && v >= 0 && v < vietas[r].Length)
                    {
                        if (vietas[r][v] == 0)
                        {
                            vietas[r][v] = 1;
                            rezervacijas.Add($"Rinda {r + 1}, vieta {v + 1}");
                            Console.WriteLine("Vieta veiksmīgi rezervēta!");
                        }
                        else
                        {
                            Console.WriteLine("Vieta jau ir rezervēta!");
                        }
                    }
                    else
                    {
                        Console.WriteLine("Nepareizs vietas numurs!");
                    }
                    break;
                    
                case 3:
                    Console.WriteLine("Rezervāciju saraksts:");
                    if (rezervacijas.Count == 0)
                        Console.WriteLine("Nav nevienas rezervācijas");
                    else
                        rezervacijas.ForEach(Console.WriteLine);
                    break;
                    
                case 4:
                    Console.WriteLine("Programma tiek aizvērta...");
                    break;
                
                default:
                    Console.WriteLine("Nepareiza izvēle!");
                    break;
            }
            
        } while (izvele != 4);
        
    }
}
