С#, консоль Дан целочисленный массив размера N. Вставить после каждой его серии элемент с...

0 голосов
64 просмотров

С#, консоль
Дан целочисленный массив размера N. Вставить после каждой его серии элемент с нулевым значением. Серия - это группа подряд идущих одинаковых элементов, длина серии — количество этих элементов (длина серии может быть равна 1).


Информатика (33 баллов) | 64 просмотров
Дан 1 ответ
0 голосов

Using System;

static void Main()
{
        int[] sourceArray = new int[] {3, 1, -4, -4, 65};                  //Исходный массив
        int[] newArray = new int[sourceArray.Length * 2];                  //Новый массив с максимальной нужной длиной
        int newArrayIndex = 0;                                             //Индекс для нового массива
        for (int i = 0; i < sourceArray.Length; i++)
        {
                newArray[newArrayIndex++] = sourceArray[i];
                if (i == sourceArray.Length - 1 || sourceArray[i] != sourceArray[i + 1])
                        newArray[newArrayIndex++] = 0;
        }
        for (int i = 0; i < newArrayIndex; i++)                            //Выводим новый массив на экран
                Console.Write(newArray[i] + " ");
        Console.ReadKey();
}

(918 баллов)