#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define LIM 1005 char xrin[LIM][10], xrina[LIM][10], hm[LIM][LIM], col[LIM], lin[LIM]; int n, m, h; int main() { // freopen("date.in", "r", stdin); // freopen("date.out","w", stdout); scanf("%d %d %d\n", &n, &m, &h); for(int i = 0; i < n; i++) { for(int j = 0; j < m; j++) { scanf("%c", &hm[i][j]); } scanf("\n"); } // // for(int i = 0; i < n; i++) { // for(int j = 0; j < m; j++) { // printf("%c", hm[i][j]); // } // printf("\n"); // } for(int i = 0; i < h; i++) { for(int j = 0; j < m; j++) { scanf("%c", &xrin[i][j]); } scanf("\n"); } for(int j = 0; j < m; j++) { for(int i = 0; i < h; i++) { if(xrin[i][j] == '#') { col[j]++; } } } for(int i = 0; i < h; i++) { for(int j = 0; j < n; j++) { scanf("%c", &xrina[i][j]); } scanf("\n"); } for(int i = n - 1; i >= 0; i--) { for(int j = 0; j < h; j++) { if(xrina[j][i] == '#') { lin[i]++; } } } for(int i = n - 1; i >= 0; i--) { for(int j = m - 1; j >= 0; j--) { if(hm[i][j] == '#') { hm[i][j] = (min(lin[n - i - 1], col[j]) + '0'); } } } for(int i = 0; i < n; i++) { for(int j = 0; j < m; j++) { printf("%c", hm[i][j]); } printf("\n"); } return 0; }