#include #include #include #include #include #include #include using namespace std; #define int long long #define endl "\n" #define debug(x) "\e[1;31m"<<#x<<"="<<(x)<<"\e[0m" templateostream & operator<<(ostream &out,vector &v){ for(T i:v)out<istream & operator>>(istream &in,vector &v){ for(T &i:v)in>>i; return in; } void init(); void task(); int32_t main(){ int t=1; init(); cin>>t; while(t--)task(); } void init(){} int n; char mp[15][15]; bool dfs_first(int i,int j,vector>s){ if(i>n || j>n || mp[i][j]=='#')return false; s.push_back({i,j}); if(i==n && j==n){ mp[1][1]='.'; return true; } mp[i][j]='#'; return dfs_first(i+1,j,s) || dfs_first(i,j+1,s); mp[i][j]='.'; } bool dfs(int i,int j){ if(i>n || j>n || mp[i][j]=='#')return false; if(i==n && j==n)return true; mp[i][j]='#'; bool ans=dfs(i+1,j) || dfs(i,j+1); mp[i][j]='.'; return ans; } void printMap(){ for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ cout<>n; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ cin>>mp[i][j]; } } int ans=dfs_first(1,1,{}); //printMap(); if(ans)ans+=dfs(1,1); cout<