hdoj6708 2019 CCPC网络选拔赛 1007 Windows Of CCPC

#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;

char maze[1025][1025];
void display(int x, int y, int d, int flag) {
    if (d == 0) {
        if (flag)   maze[x][y] = 'P';
        else        maze[x][y] = 'C';
        return;
    }

    int w = 1 << d - 1;
    display(x, y, d - 1, flag);
    display(x + w, y, d - 1, !flag);
    display(x, y + w, d - 1, flag);
    display(x + w, y + w, d - 1, flag);
}
int main() {
    ios_base::sync_with_stdio(false);
    int T;
    cin >> T;
    while (T--) {
        int n;
        cin >> n;
        display(0, 0, n, 0);
        for (int i = 0; i < 1 << n; i++) {
            for (int j = 0; j < 1 << n; j++) {
                cout << maze[i][j];
            }
            cout << endl;
        }
    }
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/woxiaosade/p/11433694.html