[BOJ/백준/C++] 2447번 별 찍기 - 10

2024. 1. 29. 12:18·Coding Test/Baekjoon
728x90
반응형
 

2447번: 별 찍기 - 10

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

www.acmicpc.net


 

📌 접근 방법

😱 쉬워보였지만 매우매우 어려웠다 😅

  • N = 3일 경우 공백 
    (1, 1)
  • N=9일 경우 공백
    (1,1), (1,4), (1,7)
    (3,3), (3,4), (3,5)
    (4,1), (4,3), (4,4), (4,5), (4,7)
    (5,3), (5,4), (5,5)

➡️ 규칙

  • 작은 공백은 (x%3==1)&&(y%3==1)의 조건을 만족할 때 공백이 생긴다는 것을 알 수 있었다.
  • 큰 공백은 ((x/N)%3==1)&&((y/N)%3==1)이 만족되면 공백이 생긴다는 것을 알 수 있었다.

재귀적 반복을 이용하면 구할 수 있었다.

 

✅  Pass Code

#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<vector>
#include<iterator>
#include<map>
#include<set>
#include<unordered_set>
#include <stack>
#include<queue>
#include<deque>

using namespace std;
void star(int n, int x, int y){
    if((x/n)%3==1&&(y/n)%3==1){
        cout<<" ";
    }
    else{
        if(n/3==0){
            cout<<"*";
        }
        else{
            star(n/3, x, y);
        }
    }
}
int main() {

    ios::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

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

    }


    return 0;
}

 

 

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Coding Test > Baekjoon' 카테고리의 다른 글

[BOJ/백준/C++] 15649번  (1) 2024.01.29
[BOJ/백준/C++] 11729번 하노이 탑 이동 순서  (0) 2024.01.29
[BOJ/백준/C++] 17103번 골드바흐 파티션  (2) 2024.01.28
[BOJ/백준/C++] 4779번 칸토어 집합  (1) 2024.01.28
[BOJ/백준/C++] 24060번 알고리즘 수업 - 병합 정렬 1  (1) 2024.01.28
'Coding Test/Baekjoon' 카테고리의 다른 글
  • [BOJ/백준/C++] 15649번
  • [BOJ/백준/C++] 11729번 하노이 탑 이동 순서
  • [BOJ/백준/C++] 17103번 골드바흐 파티션
  • [BOJ/백준/C++] 4779번 칸토어 집합
예롱메롱
예롱메롱
  • 예롱메롱
    예롱이의 개발 블로그
    예롱메롱
  • 전체
    오늘
    어제
    • 전체보기 (274)
      • 프로젝트 (35)
        • Wedle (12)
        • 인스타그램 클론 코딩 (13)
        • 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (10)
      • 인프런 Spring 강의 정리 (79)
        • 스프링 입문 - 코드로 배우는 스프링 부트, 웹 .. (7)
        • Spring 핵심 원리 - 기본편 (9)
        • 모든 개발자를 위한 HTTP 웹 기본 지식 (8)
        • 자바 ORM 표준 JPA 프로그래밍 - 기본편 (11)
        • 실전! 스프링 부트와 JPA 활용1 - 웹 애플리.. (6)
        • 실전! 스프링 부트와 JPA 활용2 - API 개.. (5)
        • 실전! 스프링 데이터 JPA (7)
        • 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (7)
        • 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 (11)
        • 실전! Querydsl (8)
      • Cloud (3)
      • Spring (6)
        • spring boot (5)
        • 소셜로그인 (1)
      • Docker (2)
      • DevOps (0)
      • Coding Test (114)
        • Programmers (37)
        • Baekjoon (76)
      • KB It's Your Life 6기 (1)
      • CS (18)
        • 알고리즘 (13)
        • 컴퓨터 구조 (1)
        • Operating System (0)
        • Network (0)
        • Database (4)
      • git (1)
      • Language (15)
        • Java (5)
        • C++ (6)
        • Python (4)
    • GITHUB GITHUB
    • INSTAGRAM INSTAGRAM
  • hELLO· Designed By정상우.v4.10.3
예롱메롱
[BOJ/백준/C++] 2447번 별 찍기 - 10
상단으로

티스토리툴바