이 문제 레전드다.
https://cryptosalamander.tistory.com/38
이 블로그를 참고하지 못했다면 절대 못 풀었다.
#include <stdio.h>
#pragma warning(disable: 4996)
int star(int i,int j, int n) {
if ((i / n) % 3 == 1 && (j / n) % 3 == 1) {
printf(" "); //어쨋든 n이 3이 될 때까지 나눠서 조건에 넣음
}
else{
if (n / 3 == 0) // 가장 작은 단위가 위 조건에 불합이면 별 찍음
printf("*");
else
star(i, j, n / 3); // 재귀적으로 최소 단위로 나눠줌.
}
}
int main() {
int n;
scanf("%d", &n);
for (int i = 0; i < n; i++) {
for (int j = 0; j < n;j++)
star(i, j, n);
printf("\n"); // 한 행을 다 수행하면 줄 바꿈
}
}
'온라인 저지 > 백준 일반' 카테고리의 다른 글
백준 2798번 블랙잭 [C언어] - 브루트 포스 (0) | 2022.04.11 |
---|---|
백준 11729번 하노이탑 이동 순서 [C언어] (0) | 2022.04.04 |
백준 10870번 피보나치수 5 [C언어] (0) | 2022.04.01 |
백준 10872번 팩토리얼 [C언어] (0) | 2022.03.31 |
백준 1002번 터렛 [C언어] (0) | 2022.03.31 |