- 별찍기 재귀 sol: 피라미를 위에서 본 방향



- 별찍기 재귀는 대대손손 board를 만드는 방식으로 풀이한다.
- 점화식을 기반으로 N번째 직사각형 위치의 값을 할당한다.
#include <vector>
#include <iostream>
using namespace std;
int N;
vector<vector<char>> map(401, vector<char>(401, ' '));
void recursive(int x, int y, int n){
if(n == 1){
map[x][y] = '*';
return;
}
int len = 4 * n - 3;
for(int i = x; i < x + len; ++i){
map[i][y] = '*';
map[i][y + len - 1] = '*';
}
for(int j = y; j < y + len; ++j){
map[x][j] = '*';
map[x + len - 1][j] = '*';
}
recursive(x+2, y+2, n-1);
}
int main(){
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
cin >> N;
recursive(0, 0, N);
for(int i = 0; i < 4 * N - 3; ++i){
for(int j = 0; j < 4 * N - 3; ++j){
cout << map[i][j];
}
cout << '\n';
}
}