| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [Pascal/Delphi] Написать программу решения задачи |
| Автор: vIRcR 15.9.2006, 16:16 |
| В магазине строительных материалов имеется N видов товаров (1 < JV< 20). Для каждого вида товара известны: его название (оно уникально для каждого вида товара), цена за одну единицу товара (за упаковку) в рублях, вес одной упаковки в килограммах и количество упаковок, имеющихся на складе. В магазин на автомобиле приезжает покупатель, который имеет в наличие некоторую сумму денег. Цель этого покупателя - приобрести за минимальную сумму денег максимальное по весу количество товаров, которое он может увести на своем автомобиле, при этом грузоподъемность автомобиля известна и равна W - целое число (1 < W< 100). Задача: предложить покупателю тот список товаров, который удовлетворяет его целям. Технические требования Входной файл: INPUT.TXT. Выходной файл: OUTPUT.TXT. Ограничение времени: 5 секунд. Формат входных данных Исходные данные во входном файле записаны в следующем порядке: • в первой строке файла записано число - сумма денег, имеющаяся у покупателя; • во второй строке файла записано число - грузоподъемность автомобиля; • в третьей строке файла записано число N— количество видов товаров, имеющихся в магазине; • в следующих N строках - информация о товарах в следующем формате: название товара (30 символов), пробел, цена за упаковку, пробел, вес одной упаковки, пробел, количество упаковок, имеющихся на складе. * Предполагается, что данные введены корректно. Формат выходных данных Если нельзя подобрать ни одного товара по имеющейся в наличии сумме денег, то в выходном файле должна быть записана строка «К сожалению, ничего Вам предложить не можем». В противном случае программа должна в первую строку выходного файла поместить минимальную сумму денег, которую потратит покупатель на приобретение строительных материалов, во вторую - суммарный вес товаров. В следующих строках выходного файла должна быть помещена информация о приобретаемых товарах в следующем формате: каждому виду товара соответствует одна строка выходного файла. Для каждого товара в строке указывается: его название (30 символов), пробел, количество приобретаемых упаковок, пробел, общий вес приобретаемых упаковок, пробел, сумма денег, потраченная на приобретение данного товара. Пример файлов входных и выходных данных: Входной файл: 800 500 5 Клей "Монолит" 7 5 50 3 Смесь "Рот банд" 40 5 4 Клей обойный "Момент" 30 1 50 Смесь "Фугенн Фуллер" 4 5 25 5 Шпатлевка 10 2 10 Выходной файл: 800 318 Клей "Монолит" 3 150.00 225.00 Смесь "Рот банд" 4 20.00 160.00 Клей обойный "Момент" 3 3.00 90.00 Смесь "Фугенн Фуллер" 5 125.00 225.00 Шпатлевка 10 20.00 100.00 |
| Автор: comtat 15.9.2006, 19:18 |
| решение ищи с помощью задаче о рюкзаке |
| Автор: comtat 15.9.2006, 19:34 |
| вот нашел исходник |
| Автор: vIRcR 16.9.2006, 06:57 |
| Спасибочки все работает |
| Автор: comtat 16.9.2006, 18:16 |
| Не за что |