为啥输出不了???
查看原帖
为啥输出不了???
565707
mediocre_楼主2022/11/26 12:01
#include<bits/stdc++.h>//万能头文件
using namespace std;
//初始化
const int N = 1005;
int z;
int a[N][N],n;
//递推
void dfs(int x, int xx, int y, int yy) {
	if (x == xx && y == yy)
		return;
	for (int i = x; i <= xx / 2; ++i)
		for (int j = y; j <= yy / 2; ++j)
			a[i][j] = 0;
	/*for (int i = 1; i <= n; ++i) {
		for (int j = 1; j <= n; ++j)
			printf("%d ", a[i][j]);
		printf("\n");
	}
	printf("--------------------\n");*/
	dfs(x, xx / 2, y + yy / 2 - 1, yy);
	dfs(x + xx / 2 - 1, x, y, yy / 2);
	dfs(x + xx / 2 - 1, x, y + yy / 2 - 1, yy);
}
int main() {
	//输入
	scanf("%d", &z);
	n = 1;
    for (int i = 1;i <= z;++i)
        n *= 2;
	for (int i = 1; i <= n; ++i)
		for (int j = 1; j <= n; ++j)
			a[i][j] = 1;
	//调用函数
	dfs(1, n, 1, n);
	//输出
	for (int i = 1; i <= n; ++i) {
		for (int j = 1; j <= n; ++j)
			printf("%d ", a[i][j]);
		printf("\n");
	}
	return 0;
}
2022/11/26 12:01
加载中...