[백준/boj] 1992번: 쿼드트리 | C++

2024. 2. 19. 10:57·백준 문제풀이

분할정복 문제 

재귀 연습 문제 

 

실수한 부분 

- 문자열로 주어지는 걸 int 이중배열로 받으려고 해서 헤맴

 

#include<iostream>
#include<vector>
#include<string>
using namespace std;

// 0 = 흰색, 1= 검정
int n;
char board[65][65]; 
vector<char> ans;

void func(int row, int col, int size){
    char cur = board[row][col];
    bool devide = false;

    for(int i =row;i<row+size;i++){
        for(int j =col;j<col+size;j++){
            if(cur!= board[i][j]){
                devide =true;
            }
        }
    }
    if(devide == false){ //하나의 값을 발견
        ans.push_back(cur);
    }else{
        int newS = size/2;
        for(int i =0;i<2;i++){
            for(int j =0;j<2;j++){

                if(i==0&&j==0){
                    ans.push_back('(');
                    
                }
                func(row+newS*i,col+newS*j,newS);

                if(i==1&&j==1){
                    ans.push_back(')');
                }

            }
        }
    }


}
//한 덩어리에 대해 왼쪽위 오른쪽위 왼족 아래 오른족 아래 순서로 0,1 표현
int main(){
    ios::sync_with_stdio(0);
    cin.tie(0);

    cin>>n;

    for(int i =0;i<n;i++){
        for(int j =0;j<n;j++){
            cin>>board[i][j];
        }
    }

    func(0,0,n); 
    
    for(int i=0;i<ans.size();i++){
        cout <<ans[i];
    }
}

'백준 문제풀이' 카테고리의 다른 글

[백준/boj] 1043번: 거짓말 | C++  (0) 2024.02.26
[백준/boj] 11501번: 주식 | C++  (0) 2024.02.23
[백준/boj] 1012번: 유기농 배추 | C++  (1) 2024.01.07
[백준/boj] 2178번: 미로 탐색 | C++  (1) 2023.12.30
[백준/boj] 2504번: 괄호의 값 | C++  (1) 2023.12.29
'백준 문제풀이' 카테고리의 다른 글
  • [백준/boj] 1043번: 거짓말 | C++
  • [백준/boj] 11501번: 주식 | C++
  • [백준/boj] 1012번: 유기농 배추 | C++
  • [백준/boj] 2178번: 미로 탐색 | C++
c_jm
c_jm
  • c_jm
    c_jm
    c_jm

    🎋 어제보다 발전한 오늘

  • 전체
    오늘
    어제
    • 분류 전체보기 (36)
      • 프로젝트 (6)
      • 백준 문제풀이 (19)
      • 프로그래머스 문제풀이 (4)
      • 공부 (1)
      • 문제 해결 (2)
      • 기타 (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    docker
    도커
    홈서버
    도커컴포즈
    티스토리 다크모드
    html
    docker-compose.yml
    리버스 프록시 서버
    jquery
    다크모드
    리버스 프록시
    글자색
    docker-compose
    코드블럭
    reverse proxy
    복붙
    인라인 css
    백준 #1152 #c++
    nginx
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
c_jm
[백준/boj] 1992번: 쿼드트리 | C++
상단으로

티스토리툴바