-
#include <iostream>
char** BoxInit(int _n) {
char** box;
box = new char*[_n];
for (int i = 0; i < _n; i++) {
box[i] = new char[_n];
}
for (int i = 0; i < _n; i++) {
for(int j = 0; j < _n; j++) {
box[i][j] = ' ';
}
}
return box;
}
void GenStars(char** _a, int _n , int _x, int _y) {
if(_n < 3) {
_a[_x][_y] = '*';
return;
}
else {
for(int i = 0; i < 3; i ++){
for (int j = 0; j < 3; j++) {
if(i == 1 && j == 1);
else{
GenStars(_a, _n / 3, _x + (_n / 3) * i , _y + (_n / 3) * j);
}
}
}
}
return;
}
int PrintStars(char** _a, int _n) {
for (int i = 0; i < _n; i++) {
for (int j = 0; j < _n; j++ ){
std::cout << _a[i][j];
}
std::cout << "\n";
}
return 1;
}
int main (void) {
int num = -1;
std::cin >> num;
char** a = BoxInit(num);
GenStars(a, num, 0, 0);
PrintStars(a, num);
for(int i = 0; i < num; i++) {
delete[] a[i];
}
delete[] a;
return 0;
}
느림