输入输出样例
输入
3
输出
0 0 0 0 0 0 0 1
0 0 0 0 0 0 1 1
0 0 0 0 0 1 0 1
0 0 0 0 1 1 1 1
0 0 0 1 0 0 0 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
1 1 1 1 1 1 1 1
代码实例:
```java
import java.util.Scanner;
public class Main{
public static void main(String args[]) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int matrix[][] = new int[(int) Math.pow(2, n)][(int) Math.pow(2, n)];
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix.length; j++) {
matrix[i][j] = 1;
}
}
fanZhuan(matrix, 0, 0, matrix.length);
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix.length; j++) {
System.out.print(matrix[i][j] + " ");
}
System.out.println();
}
scanner.close();
}
// 反转函数
public static void fanZhuan(int matrix[][], int x, int y, int r) {
for (int i = x; i < x + r / 2; i++) {
for (int j = y; j < y + r / 2; j++) {
matrix[i][j] = 0;
}
}
if(r/2==1) {
return;
}
//右上角
fanZhuan(matrix,x+r/2,y,r/2);
//左下角
fanZhuan(matrix,x,y+r/2,r/2);
//右下角
fanZhuan(matrix,x+r/2,y+r/2,r/2);
}
}