急用!关于用点阵小图形填满三角形矩阵

C_aMUs 2009-02-22 11:00:46
有一个由点组成三角形矩阵,10*10规格(等腰)(也就是10,9,8.....1)
另外有12个不同形状的小图形,一样是由几个点组成的(类似俄罗斯方块中的方块样式)(比如“凹”,“L”,“十”,“M”等形状);
每个图形可以旋转4个方向,但只能使用一次。
要求用C语言编写程序实现用十二个小图形填满三角形矩阵。

大大们帮帮忙...
...全文
152 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dengfei007 2009-02-24
  • 打赏
  • 举报
回复
学习~~~~~~~等待高手来解答~~~~~~
gamedragon 2009-02-24
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 C_aMUs 的回复:]
远水难解近渴.用穷举算法基本上可以解决这道题,
我设置了个三维数组[12个图形][4种状态][18(16个用0,1来表示点阵,后两位表示的是宽度和高度)]

思想是用a1到a12去尝试可用位置,若某一图形不可放置(如a12),则返回上一图形(a11),以此类推。。。
但问题就在于这个回朔的过程这么用程序来实现??
[/Quote]
递归就行了,才12层。LZ应该会写递归吧。
绿色夹克衫 2009-02-23
  • 打赏
  • 举报
回复
如果是12个的话,基本上相当于穷举剪枝了,可以实现的。

用搜索算法,只求一个解的话,DFS应该就可以了!不过效率应该不会太高!

看看高手们怎么说吧!
C_aMUs 2009-02-23
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dlyme 的回复:]
关于这种拼图问题,我一直大力推荐Knuth的DLX算法(但奇怪的是一直应者寥寥?):
(《Dancing  Links》,http://www-cs-faculty.stanford.edu/~knuth/preprints.html 这里能下载到)
[/Quote]

你好,这些资料很珍贵,但是毕竟是英文...我的豆芽菜一直不是很好,尴尬...

远水难解近渴.用穷举算法基本上可以解决这道题,
我设置了个三维数组[12个图形][4种状态][18(16个用0,1来表示点阵,后两位表示的是宽度和高度)]

思想是用a1到a12去尝试可用位置,若某一图形不可放置(如a12),则返回上一图形(a11),以此类推。。。
但问题就在于这个回朔的过程这么用程序来实现??

小弟不解,望各位高手们指点(直接写出代码并做指点)
  • 打赏
  • 举报
回复
关于这种拼图问题,我一直大力推荐Knuth的DLX算法(但奇怪的是一直应者寥寥?):
(《Dancing Links》,http://www-cs-faculty.stanford.edu/~knuth/preprints.html 这里能下载到)
C_aMUs 2009-02-23
  • 打赏
  • 举报
回复
感谢楼上的朋友们帮忙,凌晨还在奋斗。
我是个CSDN新人,但是如果能将这题解答出来我愿意多加分来表达我的激动。。。谢谢

这题目困扰我3天了...天啊..
sunnyplain 2009-02-23
  • 打赏
  • 举报
回复
wow
It seems a game called ShangNaoJin 12 Kuai
I have written the game, let me find it for you someday

33,009

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧