Эта последоательность не является перестановкой.
Свой код можно писать, если он правильный. Неправильный код система не проглотит.
~~~~~ 16 Дек 2007, 21:52, спустя 3 минуты 18 секунд ~~~~~
Эту задачу Вам задали преподаватели как учебную или Вы решаете какую-то производственную задачу?
Если производственную, то какую? Где это будет использоваться?
~~~~~ 16 Дек 2007, 22:02, спустя 13 минут ~~~~~
На вскидку, я бы решал эту задачу так: нужно построить матрицу m*m (m - размер исходной последовательности), в которой, к примеру, номер строки обозначает номер первого элемента подпоследовательности, а номер столбца - номер последнего элемента подпоследовательности. В ячейках матрицы нужно хранить два значения - максимум и минимум в подпоследовательности, соответствующей этой ячейке (первый элемент определяется по номеру строки, последний - по номеру столбца). Потом нужно просто просмотреть эту матрицу. Те ячейки, в которых максимум минус минимум равен номер_столбца минус номер_строки - это ячейки, которые соответствуют искомым перестановкам. Вот среди таких ячеек и нужно найти такую, у которых эта разница максимальная.