#include #define MOD 1000000007 #define INF (1<<30) #define INFL (1<<62) #define pe(str) return cout<<(str)<=0;i--) #define rep(i,a,b) for(int i=(a);i<(b);i++) #define rrep(i,a,b) for(int i=(b);i>=(a);i--) #define bw(a,b,c) (((a)<=(b))&&((b)<=(c))) #define hello cout<<"hello"<>n using namespace std; typedef long long ll; typedef unsigned long long ull; typedef long double ld; typedef pair pii; typedef complex point; template void dump(InputIterator first,InputIterator last,char delim=' '){ for(InputIterator it=first;it!=last;it++){ if(it!=first)cout< void swp(T &a,T &b){ T t=a; a=b; b=t; } int w,h; int t=-1; string a[30]; std::vector v1; std::vector v2; void dfs(int i,int j){ if(!(0<=i&&i>w>>h; re(i,h) cin>>a[i]; re(i,h){ re(j,w){ if(a[i][j]=='.'){t++;dfs(i,j);} } } int k=10000; re(i,v1.size()){ dbdb("v1:"<