/*
    Veidoja: Maksimilians Lukjanskis
    Grupa: 110
    Praktiskais darbs 6.3
    Izmantotais compiler: https://www.programiz.com/csharp-programming/online-compiler/
*/
using System;
using System.Collections.Generic;

public class HelloWorld
{
    static 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}
    };
    static List<string> rezervets = new List<string>();
    
    static bool turpinat = true;

    public static void Main()
    {
        while(turpinat==true){
            ApstradatIzveli();
        }
    }
    static void ParaditZali(){
        Console.WriteLine("Sita iskatas zale!");
        for(int i=0; i<vietas.GetLength(0);i++){
            for (int j =0; j<vietas[i].Length; j++){
                Console.Write("\t" + vietas[i][j]);
            }
            Console.WriteLine();
        }
    }
    static void RezerverVietu(){
        Console.WriteLine("0=Briva vieta / 1=Aiznemta vieta");
        ParaditZali();
        Console.WriteLine("Rezervejiet vietu!");
        Console.Write("Ievadiet rindu: ");
        int rinda = Convert.ToInt32(Console.ReadLine());
        Console.Write("Ievadiet kolonu: ");
        int kolona = Convert.ToInt32(Console.ReadLine());
        if (vietas[rinda-1][kolona-1]==0){
            vietas[rinda-1][kolona-1]=1;
            rezervets.Add($"Rinda:{rinda}; Kolona:{kolona}");
            Console.WriteLine("Vieta veiksmigi rezerveta");
        }
        else{Console.WriteLine("Vieta ir aiznemta");}
    }
    static void ApstradatIzveli(){
        Console.WriteLine("________________________");
        Console.WriteLine("1-Paradit zali");
        Console.WriteLine("2-Rezervet vietu");
        Console.WriteLine("3-Paradit rezervaciju sarakstu");
        Console.WriteLine("4-Iziet");
        Console.WriteLine("_________________________");
        Console.Write("Kada ir jusu izvele: ");
        int izvele = Convert.ToInt32(Console.ReadLine());
        switch(izvele){
            case 1: ParaditZali(); break;
            case 2: RezerverVietu(); break;
            case 3: if (rezervets.Count==0){
                Console.WriteLine("Nav nevienas rezervacijas");
            }
                else{
                    Console.WriteLine("Rezervacijas:");
                    foreach(string rez in rezervets){
                        Console.WriteLine(rez);
                    }
                } 
            break;
            case 4: Console.WriteLine("Visu labu"); turpinat = false; break;
            default: Console.WriteLine("Nepareizais skaitlis!"); break;
            
        }
    }
}