https://school.programmers.co.kr/learn/courses/30/lessons/161990
드래그 하는 가장 왼쪽위 좌표와 오른쪽 아래의 좌표를 구하는 문제이다
min과 max값을 갱신시켜 해결했따
maxX와 maxY는 드래그시 우측하단에 있으므로 좌표를 1씩 더해주는게 중요하다
더보기
#include <string>
#include <vector>
#include <climits> // INT_MAX
using namespace std;
vector<int> solution(vector<string> wallpaper) {
vector<int> answer;
int minX = INT_MAX, minY = INT_MAX, maxX = 0, maxY = 0;
for (int i = 0; i < wallpaper.size(); i++)
{
for (int j = 0; j < wallpaper[0].size(); j++)
{
if (wallpaper[i][j] == '#')
{
if (i < minX)
{
minX = i;
}
if (i > maxX)
{
maxX = i;
}
if (j < minY)
{
minY = j;
}
if (j > maxY)
{
maxY = j;
}
}
}
}
answer.push_back(minX);
answer.push_back(minY);
// 최고값은 우측 하단을 가리켜야하기 때문에 + 1
answer.push_back(maxX + 1);
answer.push_back(maxY + 1);
return answer;
}
'코딩테스트' 카테고리의 다른 글
| 프로그래머스 / 타겟 넘버 (0) | 2026.05.29 |
|---|---|
| 프로그래머스 / 기능개발 (0) | 2026.05.27 |
| 프로그래머스 / 같은 숫자는 싫어 (0) | 2026.05.15 |
| 프로그래머스 / 삼각형의 완성조건(2) (0) | 2026.05.14 |
| 프로그래머스 / 컨트롤 제트 (0) | 2026.05.13 |