Учитывая отсортированный список чисел, я хотел бы найти самую длинную подпоследовательность, где различия между последовательными элементами геометрически возрастают. Итак, если список
1, 2, 3, 4, 7, 15, 27, 30, 31, 81
то подпоследовательность 1, 3, 7, 15, 31. В качестве альтернативы рассмотрим 1, 2, 5, 6, 11, 15, 23, 41, 47, имеющую подпоследовательность 5, 11, 23, 47 с a = 3 и k = 2.
Можно ли это решить в O (n 2) времени? Где n - длина списка.
Меня интересует как в общем случае, когда прогрессия разностей есть ak, ak 2 ak 3 и т.д., где оба a и k являются целыми числами, и в частном случае, когда a = 1, поэтому прогрессия разности равна k, k 2 k 3 и т.д.
в среднем для равномерно распределенной случайной последовательности. Я не математик, и я не привык делать подобные демонстрации, поэтому, пожалуйста, заполните, чтобы исправить мне любую ошибку, которую вы можете видеть.
раз. И средняя длина этой серии (предполагая бесконечный ряд) равна
. Таким образом, общее количество циклов, которые будет выполняться, будет
. И это близко к 0, когда M → N. Проблема здесь в том, что M ~ = N.
, где d - M/N (среднее расстояние между числами). Если мы добавим для всех As от 1 до dN/b, то мы увидим верхний предел:
, поэтому цикл будет вводить среднее значение
и добавление для всех As от 1 до dN/k ^ b, это дает предел
.
