본문 바로가기
온라인저지

[BOJ] 2447번: 별찍기 - 10

by plzfday 2018. 5. 15.

2447번: 별찍기 - 10

풀이

규칙성을 찾는 수 밖에 없는데 대개 한 칸 빈칸은 쉽게 찾을 수 있을텐데 큰 빈칸을 찾는 게 어려울 수 있다.
이것은 표를 그려보면 쉽게 알 수 있는데 n=9일 때를 그려보면 '나누기 3의 몫’이 1인 구간만 빈칸인 것을 알 수 있다.

코드

#include <cstdio>
int n;
int main()
{
    scanf("%d", &n);
    for (int i = 0; i < n; ++i)
    {
        for (int j = 0; j < n; ++j)
        {
            int dx = i, dy = j;
            while (dx)
            {
                if (dx % 3 == 1 && dy % 3 == 1)
                    break;
                dx /= 3, dy /= 3;
            }
            putchar(dx ? ' ' : '*');
        }
        puts("");
    }
    return 0;
}

'온라인저지' 카테고리의 다른 글

[BOJ] 1463번: 1로 만들기  (0) 2018.05.20
[BOJ] 2448번: 별찍기 - 11  (0) 2018.05.15
[BOJ] 2523번: 별찍기 - 13  (0) 2018.05.15
[BOJ] 1991번: 트리 순회  (0) 2018.05.11
[BOJ] 1009번: 분산처리  (0) 2018.05.05
[BOJ] 4673번: 셀프 넘버  (0) 2018.04.24

댓글