티스토리 뷰

반응형

✏️ 문제 링크

https://www.acmicpc.net/problem/2447

 

2447번: 별 찍기 - 10

재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이

www.acmicpc.net

 

✏️ 문제 설명

 

 

✏️ 문제 코드

#include<iostream>
using namespace std;
int N;
char **arr;
void print_star(int y,int x,int len)
{
	if (len == 1)
	{
		arr[y][x] = '*';
		return;
	}
	int nx = len / 3;
	print_star(y, x, nx);
	print_star(y, x + nx, nx);
	print_star(y, x + nx * 2, nx);

	print_star(y + nx, x, nx);
	for (int i = y+nx; i < y + nx * 2; i++)
		for (int j = x+nx; j < x + nx * 2; j++) arr[i][j] = ' ';
	print_star(y + nx, x + nx * 2, nx);

	print_star(y + nx * 2,x, nx);
	print_star(y + nx * 2, x + nx, nx);
	print_star(y + nx * 2, x + nx * 2, nx);
}
int main()
{
	cin >> N;
	arr = new char*[N];
	for (int i = 0; i < N; i++) arr[i] = new char[N];
	print_star(0,0,N);

	for (int i = 0; i < N; i++)
	{
		for (int j = 0; j < N; j++) cout << arr[i][j];
		cout << '\n';
	}
}

 

반응형

'Algorithm > BOJ' 카테고리의 다른 글

백준 2468번 C++  (0) 2023.08.07
백준 2448번 C++  (0) 2023.08.07
백준 2444번 C++  (0) 2023.08.06
백준 2443번 C++  (0) 2023.08.06
백준 2442번 C++  (0) 2023.08.06
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함