题目:
有如下的八种拼图块,每块都是由八块小正方块构成,
这些拼图块刚好可以某种方式拼合放入给定的目标形状,
请以C或C++编程,自动求解 一种拼图方式
目标拼图:
从拼图块和目标图形中我们可以发现目标图形是8*8=64个方块,也就是目标图形需要使用上述8中拼图进行拼接,每个使用一次。
本篇内容主要实现对于拼图算法的优化,加上用户操作界面功能和解决平台兼容问题。
本篇内容实现:
0、添加额外变量
1、实现无论7*8还是8*7都可以实现目标图形的底部长方形
2、横向输出所有拼图块和拼图块下的所有形状
3、居中输出顶部拼图块
4、没有找到解决方案的提示
5、找到一种即可停止
6、linux平台兼容
0、添加额外全局变量
定义目标图形底部长方形的行变量和列变量
int rows;
int cols;
定义用户选择的拼图块和拼图块形状两个变量
// 顶端拼图块的数字编号
int top_num;