题目大意: 给你一个7*8的网格,每个网格摆了一张牌,牌通过相邻组合成对应的编号(1到28),问你最多有多少种组合并且输出它。 思路: 参考了别人的代码,思路奇特 首先对牌的所有组合做成对应的编号,方便直接索引(二维数组实现) 应该牌只能横向或者纵向组合,设置两个方向。 dfs一列一列的搜,搜到每列最后一个元素换一行搜。 代码: #include<bits/stdc++.h> using namespace std; int a[7][8]; int vis[7][8]; int dir[2][2]={{1,0},{0,1}}; int id[7][8]; int num[30];...