问题陈述:最优4字词位置内任意大小的网格
鉴于四个字,把它们放置平方的m×n个网格内,使得网格的面积尽可能小。
单词必须从左到右,从上到下在网格中运行。字母可能会重叠,但无法形成其他字词。所有的单词都必须在一个巨大的链条中相互关联。
可以用4个单词“1,2,3,4”形成的网格示例。注意最后一个网格是最优化的。
我努力学习Python和我认为这将是一个很好的应用程序在砍我的牙齿。
任何想法如何构建我的数据和算法来解决这样的问题?我不是在寻找一个直接的答案,但一些提示,如:
使用此库,或此类或此数据结构。或者通过可用空间迭代。
“一两三四”有什么问题? – tmyklebu
好点! :)所有的单词都必须在一个巨大的链条中彼此链接。 – Auburnate
这个问题实际上与[n皇后问题]非常相似(http://en.wikipedia.org/wiki/Eight_queens_puzzle)。您可能可以使用某些解决方案来解决这个问题,以获得灵感。主要的区别是任何输入的可变尺寸输出网格。 – Brian