Ctrl K

Две равные опоры

Сложная
Для вывески нужны две опоры одинаковой высоты, и чем они выше, тем лучше. У вас есть стальные бруски длиной bars[i]. Бруски можно сваривать встык: высота опоры равна сумме длин брусков, из которых она собрана. Каждый брусок можно использовать не более одного раза — в одной из опор или не использовать вовсе. Верните наибольшую высоту, которую могут иметь две равные опоры. Если собрать их нельзя, верните 0.
Пример 1
bars=[2, 4, 5, 7] → 9

2 + 7 = 4 + 5 = 9: все четыре бруска идут в дело, обе опоры высотой 9.

Пример 2
bars=[3, 3, 10] → 3

Брусок 10 не с чем уравновесить, поэтому его откладываем; из двух троек выходят опоры высотой 3.

Пример 3
bars=[4, 9] → 0

Равные опоры собрать нельзя, ответ 0.

Ограничения
  • 1 ≤ len(bars) ≤ 20
  • 1 ≤ bars[i] ≤ 1000
  • sum(bars) ≤ 5000
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиВода между стенами СложнаяСамый большой горящий блок СложнаяПрибыль за две сделки СложнаяВсе способы расставить пробелы СложнаяПереход через пещеру Сложная
загружаем Python…
Вход
bars=[2, 4, 5, 7]
Ожидается
9

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 73 теста на сервере, включая скрытые.