Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.05.2013, 23:52   #1
22hope22
Пользователь
 
Регистрация: 31.03.2013
Сообщений: 52
По умолчанию с#

Помогите, пожалуйста, с задачей для курсовой

Вpемя pазбpасывать камни и вpемя соpтиpовать камни…
В одном уездном гоpоде есть старое забpошенное кладбище. Оно пpедставляет собой длинный унылый pяд безымянных надгpобий в виде камней pазной фоpмы. Вес всех камней pазный. Решили привести погост в порядок, отсортировав надгpобные камни по весу. Местный обычай позволяет менять два камня местами, если между ними находится ровно K дpугих камней.

Исходные данные
В пеpвой стpоке находится целое число N, количество камней (1 ≤ N ≤ 130000). Каждая из следующих N стpок содеpжит целое число X, вес очеpедного камня в гpаммах (1 ≤ X ≤ 130000).
Результат

Должен содеpжать единственное целое число — максимальное значение K (0 ≤ K < N), которое обеспечивает возможность произвести сортировку камней по весу.

Пример
исходные данные
5
30
21
56
40
17
результат
1
22hope22 вне форума Ответить с цитированием
Старый 28.05.2013, 00:21   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

вы сюда решили весь сборник переписать?
eval вне форума Ответить с цитированием
Старый 28.05.2013, 15:20   #3
22hope22
Пользователь
 
Регистрация: 31.03.2013
Сообщений: 52
По умолчанию

Ха ха ха. Прям юморист
22hope22 вне форума Ответить с цитированием
Старый 28.05.2013, 15:24   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

какое слово рассмешило?
eval вне форума Ответить с цитированием
Старый 28.05.2013, 15:29   #5
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

22hope22

Помогите, пожалуйста, с задачей для курсовой

в чем помочь, не вижу ни одного заданного вопроса, просто вываленное задание и всё.
Rififi вне форума Ответить с цитированием
Старый 28.05.2013, 15:54   #6
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Кстати, интересная задачка. Я даже за O(N^2) сходу не вижу решения.
Abstraction вне форума Ответить с цитированием
Старый 28.05.2013, 16:19   #7
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Мысли вслух:
Считать данные в массив
Отсортировать по возрастанию
Бинарным поиском по второму массиву искать все элементы из первого массива (их новую позицию)
Искать наибольший общий делитель между всеми разницами (новой и старой) в позициях (кроме 0, т.е. камень остался на месте)

Средняя сложность: NlogN + NlogN/log2 + (N-1)*(сложность поиска НОД)

Насколько верны рассуждения не знаю.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 28.05.2013 в 16:23.
BDA вне форума Ответить с цитированием
Старый 28.05.2013, 16:25   #8
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Бинарным поиском по второму массиву искать все элементы из первого массива (их новую позицию)
Плохая новость: веса разных камней могут быть одинаковыми.
Abstraction вне форума Ответить с цитированием
Старый 28.05.2013, 16:37   #9
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Цитата:
Сообщение от Abstraction Посмотреть сообщение
Плохая новость: веса разных камней могут быть одинаковыми.
Хорошая новость - "Вес всех камней pазный." (из условия)
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 28.05.2013, 16:40   #10
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

А. Оказывается, читать условие иногда полезно. Тогда тривиально, да.
Однако вопрос о том, что делать, если камни могут быть одинаковыми, остаётся...
Abstraction вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц