Найти расстояние между первым и последним максимальным элементом массива

не могу добить до конца, дошла до вывода номеров всех максимальных чисел, но найти расстояние между первым и последним не выходит. Заранее спасибо за помощь

Random r = new Random();
        int[] nums = new int[10];
        for (int i = 0; i < 10; i++)
            nums[i] = r.Next(0, 11);
        Console.WriteLine("Random array");
        foreach (int x in nums)
        {
            Console.Write($"{x} ");
        }
        Console.WriteLine();
       
        int maxi = nums[0];
        int mini = nums[0];
        int max = -1;
        int index1 = -1;
        int index2 = -1;
        // Цикл по всем элементам массива
        // От 0 до размера массива
        for (int i = 0; i < nums.Length; i++)
        {
            if (max <= nums[i])
            {
                // Запоминаем новое максимальное значение
                max = nums[i];
                // Запоминаем порядковый номер
                index1 = i;
            }
        }
        for (int i = 0; i < nums.Length; i++)
        {
            if (nums[i] == max)
            {
                index2 = i;
                Console.WriteLine("Номер максимального числа: " + index2);
            }
        }

Ответы (1 шт):

Автор решения: MBo

Небольшая модификация, а второй цикл не нужен

 int index1 = 0;
 int index2 = 0;
 for (int i = 1; i < nums.Length; i++)
        {
            if (nums[index1] < nums[i])
            {   // Запоминаем порядковый номер
                index1 = i;
                index2 = i;
            }
            else if (nums[index1] == nums[i])
                index2 = i;
        }
 вывести index2-index1
→ Ссылка