Мне нужно создать прерывистую целочисленную последовательность a_1, a_2, ..., a_n, которая удовлетворяет

{a_1, a_2, ..., a_n} ∈ [1, n]

|a_i - a_(i-1)| > 1

Как это сделать? Я ценю вам подсказку или помощь. Спасибо :)

0
Love Paper 16 Окт 2012 в 14:19
2
1,3,5,...,2k-1,2,4,...,2k (если, конечно, вы хотите random, а затем - указать это явно). Также - укажите, должна ли последовательность быть перестановкой (если нет, то также подойдет 1,3,1,3,1,...)
 – 
amit
16 Окт 2012 в 14:21

1 ответ

Лучший ответ

Когда элементов меньше 4, сделать это невозможно.

Когда имеется 4 или более элементов, мы можем построить последовательность следующим образом:

Если n четно:

[n-1, n-3, ... , 1, n, n-2, ..., 2]

Если n нечетное:

[n, n-2, ..., 1, n-1, n-3, ..., 2]

Теперь, когда n больше или равно 4, | 1-n | = | n-1 | > = 3, | 1- (n-1) | = | 1-n + 1 | = | n | > = 4, последовательность удовлетворяет ограничению.

1
Marcus 16 Окт 2012 в 14:36