본문 바로가기
백준

[2448] 별찍기 - 11

by Jcoder 2018. 7. 14.


#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';
else
arr[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));
}


'백준' 카테고리의 다른 글

[10809] 알파벳 찾기  (0) 2018.07.14
[11654] 아스키 코드  (0) 2018.07.14
[2920] 음계  (0) 2018.07.14
[8958] OX퀴즈  (0) 2018.07.14
[10039] 평균 점수  (0) 2018.05.14