给定一个面积的平面,将长宽可设置的箱子摆进去,怎样才能使平面的利用率最大?

给定一个面积的平面,将长宽可设置的箱子摆进去,怎样才能使平面的利用率最大?

最终的程序需要满足几个条件:
1、可供用户输入平面面积和箱子的长宽
2、自动给出最优的摆放办法
3、尽可能形成一个人机交互界面

对于我这样一个不懂编程的人来说,在网上找程序东拼西凑,需要几个模块?框架如何搭建?最终如何行程gui?