Конфеты
면접 대비시간 제한2초메모리 제한1024 MB
세 변의 합이 N 이하인 상자를 골라, 같은 방향으로 놓인 a x b x c 상자 개수를 최대로 만드는 크기를 구한다.
문제
Кондитерская фабрика города П, в котором живет Петя, делает очень вкусные конфеты. Как-то раз, Петя собрался в гости к своему другу Васе, который живет в городе М. От города П до города М Петя решил доехать на поезде и взять с собой в подарок как можно больше коробок вкусных конфет.
Каждая коробка конфет имеет размеры a × b × c сантиметров, где a – длина, b – ширина и c – высота коробки. Для перевозки конфет Петя хочет использовать один большой ящик в форме прямоугольного параллелепипеда. В ящик должны быть уложены все коробки конфет. Для того чтобы не повредить их, все коробки в ящике должны сохранять исходную ориентацию и располагаться в одном направлении. Петя может использовать ящик любого размера, но по правилам железнодорожных перевозок размер ящика по сумме трех измерений не может превышать N сантиметров.
Требуется написать программу, которая по заданным числам N, a, b и с определяет такой размер ящика, который должен использовать Петя, чтобы в него поместилось максимальное количество коробок конфет.
입력
Первая строка входного файла содержит разделенные пробелами четыре целых числа: N, a, b, с (1 ≤ N, a, b, c ≤ 109).
출력
Выходной файл должен содержать три числа – длину, ширину и высоту ящика, который должен выбрать Петя и в который поместится максимальное количество коробок конфет. Если подходящих ответов несколько, необходимо вывести любой.
힌트
В первом примере выгоднее всего взять ящик размером 3 × 4 × 3 сантиметров, в который поместится три коробки конфет в длину, две коробки конфет в ширину и одна коробка конфет в высоту.
Во втором примере для того, чтобы разместить хотя бы две коробки конфет, нужен ящик размером хотя бы 8 × 3 × 4, у которого сумма измерений равна 15. В подходящий ящик поместится максимум одна коробка конфет. Подходящим также является ящик размером 9 × 3 × 2, хотя он и не является минимальным.