백준
[2448] 별찍기 - 11
Jcoder
2018. 7. 14. 12:55
#include <iostream>#include <string>using namespace std;string arr[3072][6144];void star(int n, int x, int y);int main(){int i, j;int num;cin >> num;for (i = 0; i < num; i++){for (j = 0; j < num*2; j++){if (j == num * 2 - 1)arr[i][j] = '\0';elsearr[i][j] = " ";}}star(num, num - 1, 0);for (i = 0; i < num; i++){for (j = 0; j < num * 2; j++)cout << arr[i][j];cout << "\n";}return 0;}void star(int n, int x, int y){if (n == 3){arr[y][x] = "*";arr[y+1][x-1] = "*";arr[y+1][x+1] = "*";arr[y+2][x-2] = "*";arr[y+2][x-1] = "*";arr[y+2][x] = "*";arr[y+2][x+1] = "*";arr[y+2][x+2] = "*";return;}star(n / 2, x, y);star(n / 2, x - (n / 2), y + (n / 2));star(n / 2, x + (n / 2), y + (n / 2));}