#include<bits/stdc++.h>
int a[1005][1005];
int m;
using namespace std;
int main() {
cin >> m;
int k = 1, mid = 1;
a[0][0] = 1;
while (k <= m) {
for (int i = 0; i < mid; i++) {
for (int j = 0; j < mid; j++) {
a[i][j + mid] = a[i][j] + mid;
}
}
for (int i = 0; i < mid; i++) {
for (int j = 0; j < mid; j++) {
a[i + mid][j] = a[i][j + mid];
a[i + mid][j + mid] = a[i][j];
}
}
mid *= 2;
k++;
}
for (int i = 0;i < m; i++) {
for (int j = 0; j < m; j++) {
cout << setw(4) << a[i][j];
}
cout << endl;
}
return 0;
}
为什么会runtime error?