#include //#include #pragma GCC optimize("O3") using namespace std; #define reps(i,s,n) for(int i = s; i < n; i++) #define rep(i,n) reps(i,0,n) #define Rreps(i,n,e) for(int i = n - 1; i >= e; --i) #define Rrep(i,n) Rreps(i,n,0) #define ALL(a) a.begin(), a.end() using ll = long long; using vec = vector; using mat = vector; ll N,M,H,W,Q,K,A,B; string S; using P = pair; const ll INF = (1LL<<60); template bool chmin(T &a, const T b){ if(a > b) {a = b; return true;} else return false; } template bool chmax(T &a, const T b){ if(a < b) {a = b; return true;} else return false; } template void my_printv(std::vector v,bool endline = true){ if(!v.empty()){ for(std::size_t i{}; i>H>>W>>K; if(K&1) no(); int h = (H+1)/2, w = (W+1)/2, r = K / 2, minr = h + w - 2; if(r < minr || h * w - 1 < r || (r&1) != (minr&1)) no(); r -= minr; vector ans(H, string(W, '.')); for(int j = 1; j < W; j += 2){ reps(i, 1, H) ans[i][j] = '#'; } int height = 1, pos = W - 3; while(r && height + 3 < H){ ans[height][pos] = ans[height + 2][pos + 2] = '#'; ans[height + 1][pos + 1] = ans[height + 3][pos + 1] = '.'; if(pos == 0){ height += 4; pos = W - 3; }else{ pos -= 2; } r -= 2; } pos = 1; while(r){ ans[H - 1][pos] = '.'; ans[H - 3][pos] = '#'; pos += 4; r -= 2; } rep(i, H) cout<