


바탕화면의 상태를 나타내는 문자열 배열 : wallpaper
"." 빈칸 , "#" 파일 있음
드래그해서 파일 전체를 선택할 수 있을 때, 드래그의 시작 지점 과 끝 지점 return
접근 방법 : 전체를 선택해야 하니까 최소와 최대를 떠올림
파일이 있는 부분들의 위치를 전부 모아보니 return값이
[행 최소, 열 최소, 행 최대 +1, 열 최대 +1] 인 규칙성 확인 후 접근
행과 열을 모아놓을 list를 만들어 놓고,
문자열 배열을 돌면서 '#'이면 행과 열 값을 리스트에 저장
행과 열만 모여있는 리스트에서 최대 최소를 뽑아 return 배열에 담아 줌
import java.util.*;
class Solution {
public int[] solution(String[] wallpaper) {
int[] result = new int[4];
ArrayList<Integer> row = new ArrayList<>();
ArrayList<Integer> col = new ArrayList<>();
for (int i = 0; i < wallpaper.length; i++) {
for (int j = 0; j < wallpaper[i].length(); j++) {
if(wallpaper[i].charAt(j) == '#') {
row.add(i);
col.add(j);
}
}
}
result[0] = Collections.min(row);
result[1] = Collections.min(col);
result[2] = Collections.max(row) + 1;
result[3] =Collections.max(col) + 1;
return result;
}
}
