using namespace std; char fie[5][5],q[5][5]; int n,ans,sum,f; int row[5],line[5]; void dfs(int x,int y) {
for(int i=y;i<=n;i++) {
if(q[x][y]=='.'&&fie[x][y]=='.'&&!row[x]&&!line[y]) {
fie[x][y]='R';
row[x]=1;
line[y]=1;
} else if(q[x][y]=='X') row[x]=line[y]=0;
else if(fie[x][y]=='R') continue;
if(x==n&&y==n) {
for(int i=1;i<=n;i++) {
for(int j=1;j<=n;j++) {
if(fie[i][j]=='R') sum++;
}
}
ans=max(ans,sum);
sum=0;
return;
}
else if(y==n) {
dfs(x+1,1);
fie[x][y]='.';
return;
}
else {
dfs(x,y+1);
fie[x][y]='.';
return;
}
}
} int main() {
while(cin>>n&&n) {
ans=0;
for(int i=1;i<=n;i++)
}
return 0;
}
比赛已结束。