static void PasiekiamiMiestai(Miestas miestas, Miestas[] miestai) { if (miestas.nr != 1) { miestas.aplankytas = true; } if (miestas.miestoVartai.Any(x => x.panaudoti == true) && Array.FindLastIndex(miestai, y => y.aplankytas == false) == 0) { if (miestas.miestoVartai.Any(x => x.kiti.miestas.nr == 1)) { Vartai temp = Array.Find(miestas.miestoVartai, x => x.kiti.miestas.nr == 1); Console.WriteLine(temp.nr + " " + temp.kiti.nr); Console.WriteLine("Taip"); } else { Console.WriteLine("Ne"); } return; } foreach (Vartai vartai in miestas.miestoVartai) { if (!vartai.panaudoti && !vartai.kiti.miestas.aplankytas) { Console.WriteLine(vartai.nr + " " + vartai.kiti.nr); vartai.panaudoti = true; vartai.kiti.panaudoti = true; PasiekiamiMiestai(vartai.kiti.miestas, miestai); } } }
static void DuomenuSkaidymas(string[] duomenys, List <Vartai> vartai) { foreach (string eile in duomenys) { string[] numeriai = eile.Split(' '); int nr1 = int.Parse(numeriai[0]); int nr2 = int.Parse(numeriai[1]); int pirmiNr; if (nr1 % 4 == 0) { pirmiNr = 4; } else { pirmiNr = nr1 % 4; } int antriNr; if (nr2 % 4 == 0) { antriNr = 4; } else { antriNr = nr2 % 4; } Vartai pirmi = new Vartai(pirmiNr, nr1); Vartai antri = new Vartai(antriNr, nr2); pirmi.Susijungia(antri); antri.Susijungia(pirmi); vartai.Add(pirmi); vartai.Add(antri); } }
public void Susijungia(Vartai kiti) { this.kiti = kiti; }