![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 24.09.2011
Сообщений: 96
|
![]()
Целочисленный массив X из n элементов разбит на m фрагментов. В целочисленном массиве K из m элементов хранятся длины соответствующих фрагментов (все K[i] различны, их сумма равна n). Упорядочить массив K по возрастанию, переставив соотвествующие фрагменты в массиве X.
|
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 24.09.2011
Сообщений: 96
|
![]()
к примеру есть массив X[10]=1,2,3,4,5,6,7,8,9,10. разделили его на 4 неравные части. 1ый фрагмент: 1,2,3. 2ой: 4. 3ий: 5,6,7,8. 4ий: 9,10. и массив получился к[4]= 3,1,4,2. потом сортируем массив х, чтобы массив к стал упорядочным. тогда будет х[10]=4,9,10,1,2,3,5,6,7,8 и к[4]=1,2,3,4.
Вот как должно работать, помогите программу написать |
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]()
Надеюсь, второй массив завести можно?
Первое, что нам понадобится - карта массива K. Это такой массив S, что i-ый его элемент содержит индекс i-го по возрастанию элемента K. Например (индексы от 0): Код:
Ну, а дальше мы заводим массив X` и последовательно, для каждого элемента S определяемся, какому фрагменту в X он соответствует и дописываем этот фрагмент в X`. В примере, S[0]=1, сумма K[i<1] равна 3, K[1]+3=4, в X` добавляются X[3<=i<4]; S[1]=3, сумма K[i<3] равна 8, K[3]+8=10, в X` добавляются X[8<=i<10]; S[2]=0, сумма K[i<0] равна 0, K[0]+0=3, в X` добавляются X[0<=i<3]; S[3]=2, сумма K[i<2] равна 4, K[2]+4=8, в X` добавляются X[4<=i<8]; |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
С# задан массив 5х5. сформировать массивы А и В. в массив А поместить элементы с четными индексами, в массив В с нечетны | Koksa | Помощь студентам | 0 | 10.10.2011 11:26 |
Задан вектор X[20]. Положительные числа переписать в массив Y, а отрицательные в массив W | leha_demi | Помощь студентам | 2 | 24.09.2011 18:12 |
Запись координат в массив в реал тайм, Как записать координаты в массив | Dark19 | Visual C++ | 2 | 21.06.2011 18:45 |
Из массив А получить массив В, удвоив все нечётные элементы удвоены ( на Pascal) | KARTER | Помощь студентам | 1 | 18.06.2011 19:58 |
Массив - Нужно написать массив и распечатать на экран с конца в начало(язык С++) | econ | Помощь студентам | 1 | 29.05.2011 22:02 |