ЗАДАЧИ
problems.ru
О проекте | Об авторах | Справочник
Каталог по темам | по источникам |
К задаче N

Проект МЦНМО
при участии
школы 57
Фильтр
Сложность с по   Класс с по  
Выбрано 3 задачи
Версия для печати
Убрать все задачи

Максимальное время работы на одном тесте: 1 секунда

Максимальный объем используемой памяти: 64 мегабайта

По случаю введения больших новогодних каникул устраивается великий праздничный бал-маскарад. До праздника остались считанные дни, поэтому срочно нужны костюмы для участников. Для пошивки костюмов требуется L метров ткани. Ткань продается в N магазинах, в которых предоставляются скидки оптовым покупателям. В магазинах можно купить только целое число метров ткани. Реклама магазина номер i гласит: "Мы с радостью продадим Вам метр ткани за Pi бурлей, однако если Вы купите не менее Ri метров, то получите прекрасную скидку - каждый купленный метр обойдется Вам всего в Qi бурлей". Чтобы воплотить в жизнь лозунг "экономика страны должна быть экономной", правительство решило потратить на закупку ткани для костюмов минимальное количество бурлей из государственной казны. При этом ткани можно купить больше, чем нужно, если так окажется дешевле. Ответственный за покупку ткани позвонил в каждый магазин и узнал, что:

1) реклама каждого магазина содержит правдивую информацию о ценах и скидках;

2) магазин номер i готов продать ему не более Fi метров ткани.

Ответственный за покупку очень устал от проделанной работы и поэтому поставленную перед ним задачу <закупить ткань за минимальные деньги> переложил на своих помощников. Напишите программу, которая определит, сколько ткани нужно купить в каждом из магазинов так, чтобы суммарные затраты были минимальны.

Формат входных данных

В первой строке входного файла c.in записаны два целых числа N и L (1 £ N £ 100, 0 £ L £ 100). В каждой из последующих N строк находится описание магазина номер i - 4 целых числа Pi, Ri, Qi, Fi (1 £ Qi £ Pi £ 1000, 1 £ Ri £ 100, 0 £ Fi £ 100).

Формат выходных данных

Первая строка выходного файла c.out должна содержать единственное число - минимальное необходимое количество бурлей.

Во второй строке выведите N чисел, разделенных пробелами, где i-е число определяет количество метров ткани, которое нужно купить в i-м магазине. Если в i-м магазине ткань покупаться не будет, то на i-м месте должно стоять число 0. Если вариантов покупки несколько, выведите любой из них.

Если ткани в магазинах недостаточно для пошивки костюмов, выходной файл должен содержать единственное число -1.

Примеры

c.in

c.out

2 14

7 9 6 10

7 8 6 10

88

10 4

1 20

1 1 1 1

-1

Вниз   Решение


Докажите тождество Гаусса  φ(d ) = n. Определение функции φ(n) см. в задаче 60758.

ВверхВниз   Решение


Докажите, что при любых целых a и натуральном n выражение  (a + 1)2n+1 + an+2  делится на  a² + a + 1.

Вверх   Решение

Задачи

Страница: 1 2 3 >> [Всего задач: 11]      



Задача 57278

Тема:   [ Построения с помощью двусторонней линейки ]
Сложность: 3
Классы: 8,9

Выполните построения с помощью линейки с двумя параллельными краями (двусторонней линейки) без циркуля.
а) Постройте биссектрису данного угла AOB.
б) Дан острый угол AOB. Постройте угол BOC, биссектрисой которого является луч OA.
Прислать комментарий     Решение


Задача 57279

Тема:   [ Построения с помощью двусторонней линейки ]
Сложность: 3
Классы: 8,9

С помощью одной двусторонней линейки восставьте перпендикуляр к данной прямой l в данной точке A.
Прислать комментарий     Решение


Задача 57280

Тема:   [ Построения с помощью двусторонней линейки ]
Сложность: 3
Классы: 8,9

С помощью одной двусторонней линейки:
а) через данную точку проведите прямую, параллельную данной прямой;
б) постройте середину данного отрезка.
Прислать комментарий     Решение


Задача 55580

Темы:   [ Построения с помощью двусторонней линейки ]
[ Биссектриса угла (ГМТ) ]
Сложность: 3+
Классы: 8,9

Дана линейка постоянной ширины (т.е. с параллельными краями) и без делений. Постройте биссектрису данного угла.

Прислать комментарий     Решение


Задача 55581

Темы:   [ Построения с помощью двусторонней линейки ]
[ Признаки и свойства параллелограмма ]
Сложность: 3+
Классы: 8,9

Разделите данный отрезок пополам с помощью линейки с параллельными краями и без делений.

Прислать комментарий     Решение


Страница: 1 2 3 >> [Всего задач: 11]      



© 2004-... МЦНМО (о копирайте)
Пишите нам

Проект осуществляется при поддержке Департамента образования г.Москвы и ФЦП "Кадры" .