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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.01.2012, 18:12   #1
jimmy1_1
Новичок
Джуниор
 
Регистрация: 25.01.2012
Сообщений: 1
По умолчанию Вопрос по объединению чисел по признаку

Есть два массива: первый - числа, второй - имена
Необходимо из первого массива выбирать числа таким образом, чтобы сумма чисел была в некотором промежутке и присваивать данным числам одно имя из массива 2.

Например:
пусть необходимый нам промежуток равен 1500- 1700
массив 1:
1342
788
750
644
445
444
342
150
125
и тд

массив 2:
петя
коля
юра
надя
федя
жора

должно получиться:
1342 петя
342 петя
788 коля
750 коля
644 юра
445 юра
444 юра
и тд

возможно такое что просуммировав все числа останутся такие, что их сумма может и не входить в этот промежуток(будет меньше), но этим оставшимся числам тоже надо будет присвоить имя из списка.

как все таки организовать такой алгоритм?
jimmy1_1 вне форума Ответить с цитированием
Старый 26.01.2012, 13:10   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
Необходимо из первого массива выбирать числа таким образом, чтобы сумма чисел была в некотором промежутке
1.переупорядочиваем (соритруем) первый массив так чтобы первыми били удовлетворяющие нашему условию.
2. затем берем и попарно соединяем наши массивы.
Цитата:
присваивать данным числам одно имя из массива 2
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 26.01.2012, 13:39   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
1.переупорядочиваем (соритруем) первый массив так чтобы первыми били удовлетворяющие нашему условию.
2. затем берем и попарно соединяем наши массивы.
да нет. не думаю, что автора это устроит.
тут же как раз фишка в том, как выделить числа, которые в сумме дадут нужное..
Ближе ко всему задачка, когда нужно разделить вещи на две кучки, чтобы веса кучек был максимально одинаковы (кстати, на форуме был предложенный простой алгоритм решения, он не всегда даёт самое оптимальное решение, но всегда близкое к оптимальному).
Только тут нужно разделить не на двух человек, а на N..


p.s. впрочем, задача сформулирована таким языком, что, возможно, на самом деле, ни о каком ОПТИМАЛЬНОМ решении задачи речи вообще нет!

Последний раз редактировалось Serge_Bliznykov; 26.01.2012 в 13:42.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дескриминация по национальному признаку Smitt&Wesson Свободное общение 29 14.03.2011 12:58
Срочный вопрос по объединению данных (не ВПР) Gurza Microsoft Office Excel 8 05.11.2009 02:48
Вопрос по сравнению данных и объединению smash01 Microsoft Office Excel 11 29.10.2009 23:38
Сложение по признаку???? Gadar Microsoft Office Excel 4 07.09.2009 19:27
перенос листа с сортировкой по признаку nadenenko_s Microsoft Office Excel 20 23.11.2008 14:56