func_code_string: #include <bits/stdc++.h>   using namespace std;   const int maxN = 100 + 13;   int N, M;   int s[maxN][maxN];   void enlarge(int x, int y, int l) {     int col = s[x][y];     for (int i = x; i <= x + l; i++)       for (int j = y; j <= y + l; j++) s[i][j] = col;     return;   }   void paint(int x, int y) {     int col = 0;     for (int i = 1; i <= 26; i++) {       if (i != s[x - 1][y] && i != s[x][y - 1] && i != s[x][y + 1]) {         col = i;         break;       }     }     s[x][y] = col;     int r = M;     for (int i = y + 1; i <= M; i++) {       if (s[x][i] == col || s[x - 1][i] == col) {         r = i - 1;         break;       }       if (s[x][i]) {         r = i - 1;         break;       }       bool flag(false);       for (int j = 1; j < col; j++) {         if (j != s[x - 1][i]) {           flag = true;           r = i - 1;           break;         }       }       if (flag) break;     }     r -= y;     r = min(N - x, r);     enlarge(x, y, r);     return;   }   int main() {     scanf( %d%d , &N, &M);     for (int i = 0; i <= N; i++) s[i][0] = 30;     for (int i = 0; i <= M; i++) s[0][i] = 30;     for (int i = 1; i <= N; i++)       for (int j = 1; j <= M; j++)         if (s[i][j] == 0) paint(i, j);     for (int i = 1; i <= N; i++) {       for (int j = 1; j <= M; j++) cout << (char)(s[i][j] - 1 +  A );       cout << endl;     }     return 0;   }   