2016-11-19 2 views
0

На картинке я создал массив, который я дал 15 в качестве аргумента. Я вставил случайные целые числа от 0 до 5 (включительно) в этот каталог.Java Array и sub-array

1) количество равнин, 2) самая широкая ширина плоских и 3) это самая широкая плоскость является отправной точкой в ​​массиве

Как можно написать экранную-вывод программы в языке программирования Java ?

(Например, массив равен 1 0 5 5 5 2 2 3 3 4 4 4 4 0 1. Количество уровней равно 8. То есть, принимая такое же количество повторений 1, массив становится суб-массив, который является таким же, как и все компоненты. Самая большая равнина 4 4 4 4 является наибольшим номером уровня 4. Самый большой уровень - это первые 4, 9 элементы в массиве.)

Пожалуйста, помогите мне.

Код:

public class Zehra { 
    public static void main(String args[]) { 
     int N = Integer.parseInt(args[0]); 
     int[] x = new int[N]; 

     for(int i=0; i<N; i++) 
      x[i] = (int)(Math.random()*6); 
     for(int i=0; i<N; i++) 
      System.out.print(x[i] + " "); 

     System.out.println(" "); 
    } 
} 

enter image description here

+4

Пожалуйста, включите код в свой вопрос. –

+0

Для меня непонятно, что вы хотите делать. Пожалуйста, уточните, что вы хотите сделать. – Turing85

+0

* Количество уровней - 8. * - Я не знаю, что это значит. Что такое равнина? Все, что вы, кажется, спрашиваете, это найти самый большой раздел повторений, но не имеют кода, чтобы попытаться это сделать. –

ответ

2

Не ждите никого вокруг здесь, чтобы написать код для вас. Скорее я постараюсь вести вас в правильном направлении. Итерации один раз через массив, все отслеживание времени:

  • Стартового индекс текущего выполнения одинаковых элементов
  • Значения текущего запуска
  • Число пробегов встречается
  • начальный индекс и длину самого длинного пробега равных элементов перед током.

Всякий раз, когда вы сталкиваетесь число, которое не равно значению в текущем периоде, вы знаете, что начинается новый разбег. В это время (a) добавьте один к счету пробегов (b), посмотрите, закончится ли конец, предшествующий предыдущему, и если да, запишите его как новый самый длинный прогон, как его начальный индекс, так и его длину , После окончания цикла не забудьте подсчитать последний прогон и посмотреть, дольше ли он, чем любой другой прогон.