Вложенный класс является очень общим термином: каждый класс, который не является верхним уровнем, является вложенным классом. Внутренний класс является нестатическим вложенным классом. Joseph Darcy записал очень хорошее объяснение [приблизительно 110] Вложенные, Внутренние, участник и Классы .
Верхнего уровня
Тот факт, что у вас есть высота, длина и ширина, делает эту задачу сложнее, чем простая задача о рюкзаке. Вот интересное обсуждение трехмерной задачи о ранце .
Вот статья по теме тех же ребят.
Это типичная задача с рюкзаком . Многие решения для разных языков можно найти по адресу Rosetta Code .
Это кажется хорошей проблемой, к которой можно применить симплекс-алгоритм или какой-нибудь генетический алгоритм . Если вы никогда не слышали о последних, настоятельно рекомендую прочитать о них. Как я вижу из вашего вопроса, вы делаете это улучшение, потому что вам нравится, чтобы все работало оптимально, а не потому, что вам сказали это сделать. Представьте, когда вы говорите им, что применили технику искусственного интеллекта для решения их проблемы!
Существует множество простых алгоритмов, которые решают вашу проблему, но это может быть прекрасной возможностью научиться некоторым эволюционным вычислениям. Некоторые интересные ссылки о генетических алгоритмах [каждый, не стесняйтесь редактировать и добавлять]:
Удачи!
Мануэль