Есть две коробки, первая размером A₁×B₁×C₁, вторая размером A₂×B₂×C₂. Определите, можно ли разместить одну из этих коробок внутри другой, при условии, что поворачивать коробки можно только на 90 градусов вокруг ребер.
P.S.: сложность для меня заключается в том, что стенки = 0, т. е. в случае коробок 2x2x2 и 2x2x3 будет считаться, что первая влезет во вторую. Мой код проходит мои же тесты, но валится в курсе. Подскажите логику, какие пары лучше сравнить, уже разные варианты перепробовал... И желательно использовать только простейшие конструкции. Я загонял две коробки в массив, сортировал массивы. дальше с помощью if.. elif.. else сравнивал попарно стороны, но не помогло (
Python
Python задача - уместится ли одна коробка в другую
Существует всего 6 вариантов размещения одной коробки внутри другой. Если не знаем какую коробку в какую вставлять, вариантов становится 12. Так что даже сортировки не требуется - достаточно тупо перечислить все варианты:
(A1 <= A2 && B1 <= B2 && C1 <= C2) ||
(A1 >= A2 && B1 >= B2 && C1 >= C2) ||
(A1 <= A2 && B1 <= C2 && C1 <= B2) ||
(A1 >= A2 && B1 >= C2 && C1 >= B2) ||
(A1 <= C2 && B1 <= A2 && C1 <= B2) ||
(A1 >= C2 && B1 >= A2 && C1 >= B2) ||
(A1 <= B2 && B1 <= A2 && C1 <= C2) ||
(A1 >= B2 && B1 >= A2 && C1 >= C2) ||
(A1 <= B2 && B1 <= C2 && C1 <= A2) ||
(A1 >= B2 && B1 >= C2 && C1 >= A2) ||
(A1 <= C2 && B1 <= B2 && C1 <= A2) ||
(A1 >= C2 && B1 >= B2 && C1 >= A2)
(A1 <= A2 && B1 <= B2 && C1 <= C2) ||
(A1 >= A2 && B1 >= B2 && C1 >= C2) ||
(A1 <= A2 && B1 <= C2 && C1 <= B2) ||
(A1 >= A2 && B1 >= C2 && C1 >= B2) ||
(A1 <= C2 && B1 <= A2 && C1 <= B2) ||
(A1 >= C2 && B1 >= A2 && C1 >= B2) ||
(A1 <= B2 && B1 <= A2 && C1 <= C2) ||
(A1 >= B2 && B1 >= A2 && C1 >= C2) ||
(A1 <= B2 && B1 <= C2 && C1 <= A2) ||
(A1 >= B2 && B1 >= C2 && C1 >= A2) ||
(A1 <= C2 && B1 <= B2 && C1 <= A2) ||
(A1 >= C2 && B1 >= B2 && C1 >= A2)
"т. е. в случае коробок 2x2x2 и 2x2x3 будет считаться, что первая влезет во вторую"
Весьма спорный вывод из "стенки = 0". Я бы на строгое больше-меньше проверял
Весьма спорный вывод из "стенки = 0". Я бы на строгое больше-меньше проверял
"Я загонял две коробки в массив, сортировал массивы. дальше с помощью if.. elif.. else сравнивал попарно стороны, но не помогло ("
Здесь, на первый взгляд, неправильный подход. Зачем сортировали? И лучше выкладывать код.
Здесь, на первый взгляд, неправильный подход. Зачем сортировали? И лучше выкладывать код.
Похожие вопросы
- Python задача линейной регрессии
- PYTHON Задача "Счастливые билетики"
- Python задача по комбинаторике
- Python задача "Игра с числами"
- Python задача "Сортировка перестановки"
- Python задача на программирование
- Python. Задача с числами
- Информатика Python задача ЕГЭ
- Решение задач по python
- Помогите, пожалуйста, решить задачу Python
моя ошибка была в том, что сравнивал отдельные пары, видимо какие-то случаи упускал.