luogu#P4205. [NOI2005] 智慧珠游戏

    ID: 8232 远端评测题 1000ms 125MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>搜索2005NOI 系列枚举暴力剪枝Dancing Links

[NOI2005] 智慧珠游戏

题目描述

智慧珠游戏拼盘由一个三角形盘件和 12 个形态各异的零件组成。拼盘的盘 件如图 1 所示 对 于 由珠子构成的零件,可以放到盘件的任一位置,条件是能有地方放,且 尺寸合适,所有的零件都允许旋转(0º、90º、180º、270º)和翻转(水平、竖直)。

现给出一个盘件的初始布局,求一种可行的智慧珠摆放方案,使所有的零件 都能放进盘件中。

输入格式

文件中包含初始的盘件描述,一共有 10 行,第 i 行有 i 个字符。如果第 i 行 的第 j 个字符是字母”A”至”L”中的一个,则表示第 i 行第 j 列的格子上已经放了 零件,零件的编号为对应的字母。如果第 i 行的第 j 个字符是”.”,则表示第 i 行 第 j 列的格子上没有放零件。 输入保证预放的零件已摆放在盘件中。

输出格式

如果能找到解,向输出文件打印 10 行,为放完全部 12 个零件后的布局。其 中,第 i 行应包含 i 个字符,第 i 行的第 j 个字符表示第 i 行第 j 列的格子上放的 是哪个零件。 如果无解,输出单独的一个字符串‘No solution’(不要引号,请注意大小写)。 所有的数据保证最多只有一组解

.
..
...
....
.....
.....C
...CCC.
EEEHH...
E.HHH....
E.........
B
BK
BKK
BJKK
JJJDD
GJGDDC
GGGCCCI
EEEHHIIA
ELHHHIAAF
ELLLLIFFFF