문제 이해
- 최소한의 이동 거리로 모든 파일을 드래그
- '.'은 빈칸, '#'은 문서
문제 풀이
- string 벡터를 돌며 해당 인덱스의 원소가 '#'인 경우에 해당 위치의 좌표를 각각 비교해서 조건에 맞다면 삽입
- 반복문이 끝난 후 출력
#include <string>
#include <vector>
using namespace std;
vector<int> solution(vector<string> wallpaper) {
int luX = 51, luY = 51;
int rdX = 0, rdY = 0;
int colLength = wallpaper.size();
int rowLength = wallpaper[0].size();
for(int i = 0; i < colLength; i++) {
for(int j = 0; j < rowLength; j++) {
if(wallpaper[i][j] == '#') {
if(i < luX) luX = i;
if(j < luY) luY = j;
if(i + 1 > rdX) rdX = i + 1;
if(j + 1 > rdY) rdY = j + 1;
}
}
}
return {luX, luY, rdX, rdY};
}
'프로그래머스 > 1레벨' 카테고리의 다른 글
[프로그래머스/C++] [PCCE 기출문제] 10번 / 데이터 분석 (1) | 2024.01.09 |
---|---|
[프로그래머스/C++] 공원 산책 (0) | 2023.07.05 |
[프로그래머스/C++] 달리기 경주 (0) | 2023.06.29 |
[프로그래머스/C++] 덧칠하기 (0) | 2023.06.29 |
[프로그래머스/C++] 추억 점수 (0) | 2023.06.29 |