바탕화면 정리

2025. 3. 11. 10:25·코딩 테스트/프로그래머스

문제

풀이

1. 처음에는 직사각형만 생각했다가 +형태인 경우도 있겠다는 생각이 들었다.

2. 그래서 가장 작은 x, 가장 작은 y 좌표, 가장 큰 x,y 좌표를 각각 찾아내서 작은 좌표~큰 좌표로 드래그 하면 간단하게 해결될 거라 생각했다.

3. 예제 케이스를 풀어보니 틀렸길래 왜 틀렸나 문제를 다시 살펴보니 가장 큰 좌표는 좌표 + 1이 되어야 함을 찾아냈다.

 

코드

#include <string>
#include <vector>

using namespace std;

vector<int> solution(vector<string> wallpaper) {
    // wallpaper의 원소 중 빈칸은 .  파일이 있으면 # 
    
    vector<int> answer;
    // + 형태인 경우 시작점은 가장 작은 luy와 가장 작은 lux가 좌표인 점을 구해야 하므로 이를 기준으로 삼아보자
    // 끝점은 반대로 가장 큰 rdx, 가장 큰 rdy를 구해야 한다.
    
    int MinPosY = 50;
    int MinPosX = 50;

    int MaxPosY = -1;
    int MaxPosX = -1;    
    for(int PosX = 0; PosX < wallpaper.size(); ++PosX)
    {
        for(int PosY = 0; PosY < wallpaper[0].size(); ++PosY)
        {
            if(wallpaper[PosX][PosY] == '#')
            {
                if(MinPosY > PosY)
                {
                    MinPosY = PosY;
                }
                
                if(MinPosX > PosX)
                {
                    MinPosX = PosX;
                }
                
                if(MaxPosY <= PosY)
                {
                    MaxPosY = PosY+1;
                }
                
                if(MaxPosX <= PosX)
                {
                    MaxPosX = PosX+1;
                }
            }
        }
    }
    
    answer.push_back(MinPosX);
    answer.push_back(MinPosY);
    answer.push_back(MaxPosX);
    answer.push_back(MaxPosY);
    
    return answer;
}

 

다른 사람의 풀이

1. 미리 answer에 값을 집어넣고 min,max만을 활용해서 간단하게 풀었다.

'코딩 테스트 > 프로그래머스' 카테고리의 다른 글

달리기 경주  (0) 2025.03.24
개인정보 수집 유효기간  (0) 2025.03.13
성격 유형 검사하기  (0) 2025.03.10
둘만의 암호  (0) 2025.02.24
대충 만든 자판  (2) 2025.02.07
'코딩 테스트/프로그래머스' 카테고리의 다른 글
  • 달리기 경주
  • 개인정보 수집 유효기간
  • 성격 유형 검사하기
  • 둘만의 암호
DevJoo1120
DevJoo1120
  • DevJoo1120
    Jin's Programming
    DevJoo1120
  • 전체
    오늘
    어제
    • 분류 전체보기 (142)
      • 포트폴리오 (7)
        • Castlevania: Aria of Sorrow.. (7)
        • [UE5] KILL Everything (0)
      • C++ (0)
      • 라이브러리 (1)
      • 다이렉트X11 (0)
      • Unreal Engine (11)
        • Unreal Document (1)
        • 이것 저것 (8)
        • UI (1)
      • 자료구조 및 알고리즘 (0)
      • 책 정리 (3)
        • 코딩 테스트 합격자 되기 C++ 편 (10)
      • 코딩 테스트 (32)
        • 프로그래머스 (32)
      • 스파르타 코딩 언리얼 1기 (9)
        • 특강 (0)
        • C++와 Unreal Engine으로 3D .. (2)
      • TIL(Today I Learned) (63)
      • 영어 공부 (0)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

    Study
    과제
    Til
    배열
    프로그래머스
    책 정리
    코딩테스트
    map
    정리
    문자열
    C++
    스파르타 코딩 클럽
    반복문
    코딩 테스트 합격자 되기 c++ 편
    팀 프로젝트
    코딩 테스트
    Unreal Engine 5
    정렬
    이중 반복문
    WINAPI
  • hELLO· Designed By정상우.v4.10.5
DevJoo1120
바탕화면 정리
상단으로

티스토리툴바