ZADANIE_6
unknown
plain_text
2 years ago
1.9 kB
5
Indexable
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace wyzwanieGrazy6 { internal class Program { static int Najdluzszy(int[] inTab, out int poczatekSegmentu) { int najdluzszy = 0, x, y, temp = 0; int pomocnicza = 0; for (int i = 0; i < inTab.Length-1; i++) { x = inTab[i]; y = inTab[i + 1]; if(x == y) { temp++; } else { if (temp > najdluzszy) { najdluzszy = temp; pomocnicza = i - temp; } temp = 0; } } poczatekSegmentu = pomocnicza; return najdluzszy; } static void Main(string[] args) { /* Napisz metodę znajdującą w zadanej tablicy typu int, długość najdłuższego * stałego segmentu, tzn.takiego spójnego fragmentu tablicy w którym wartości są * stałe.Dodaj także parametry typu out przekazujące indeksy początku segmentu. * * Np.dla tablicy { 2, 1, 2, 2, 5, 3, 3, 3, 3, 1, 2, 6}, takim segmentem * jest { 3, 3, 3, 3} – długość 4, indeks początkowy 5. */ int[] tab = new int[] { 0, 1, 2, 2, 2, 5, 3, 3, 3, 5, 5, 5, 5, 5, 5, 5, 5, 9, 45, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}; int najdluzszy = Najdluzszy(tab, out int poczatekSegmentu); Console.WriteLine("Poczatek najduzszegi stalego segmentu: " + poczatekSegmentu); Console.ReadKey(); } } }
Editor is loading...