[백준] 2447 별찍기 10

leejihun·2022년 5월 30일
0

알고리즘

목록 보기
14/50

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


#include<iostream>
using namespace std;

void star(int i, int j, int num)
{
    if ((i / num) % 3 == 1 && (j / num) % 3 == 1) {
        cout << ' ';
    }
    else
    {
        if (num / 3 == 0)
            cout << '*';
        else
            star(i, j, num / 3);
    }
}





int main()
{
    int num;
    cin >> num;
    for (int i = 0; i < num; i++)
    {
        for (int j = 0; j < num; j++)
            star(i, j, num);
        cout << '\n';
    }

    return 0;
}

너무 헷갈린다 흠..

https://wooono.tistory.com/403

여기 참고했다..

9x9 크기 기준, 중앙 공백 좌표
(3, 3), (3, 4), (3, 5), (4, 3), (4, 4), (4, 5), (5, 3), (5, 4), (5, 5)
(i / 3) % 3 == 1 && (j / 3) % 3 == 1
3x3 크기 기준, 중앙 공백 좌표
(1, 1), (1, 4), (1, 7), (4, 1), (4, 4), (4, 7), (7, 1), (7, 4), (7, 7)
(i / 1) % 3 == 1 && (j / 1) % 3 == 1

3x3 9x9 까진 금방 생각해냇는데 그 뒤가 어려운듯하다

profile
U+221E

0개의 댓글