#include #include #include #include #define maxn 55 using namespace std; int n,m,num[maxn],link[maxn*2],cnt,pre[maxn],ans[maxn]; char s[maxn*2][maxn]; bool vis[maxn*2]; struct edge { int u,v,nex; }e[maxn*maxn]; void addedge(int u,int v) { e[cnt].u=u; e[cnt].v=v; e[cnt].nex=pre[u]; pre[u]=cnt++; } void solve(int pos) { for (int i=0;i