728x90
https://school.programmers.co.kr/learn/courses/30/lessons/161990
728x90
메모리: 81.6 MB, 시간: 0.19 ms
사용 알고리즘: 구현
class Solution {
public int[] solution(String[] wallpaper) {
// 바탕화면 정보
int N = wallpaper.length;
int M = wallpaper[0].length();
int[] answer = new int[] {-1, -1, -1, -1};
// 가장 위에 있는 파일 찾기
for(int i = 0; i < N; i++) {
for(int j = 0; j < M; j++) {
if(wallpaper[i].charAt(j) == '#') {
answer[0] = i;
break;
}
}
if(answer[0] != -1) break;
}
// 가장 왼쪽에 있는 파일 찾기
for(int i = 0; i < M; i++) {
for(int j = 0; j < N; j++) {
if(wallpaper[j].charAt(i) == '#') {
answer[1] = i;
break;
}
}
if(answer[1] != -1) break;
}
// 가장 밑에 있는 파일 찾기
for(int i = N - 1; i >= 0; i--) {
for(int j = 0; j < M; j++) {
if(wallpaper[i].charAt(j) == '#') {
answer[2] = i + 1;
break;
}
}
if(answer[2] != -1) break;
}
// 가장 오른쪽에 있는 파일 찾기
for(int i = M - 1; i >= 0; i--) {
for(int j = 0; j < N; j++) {
if(wallpaper[j].charAt(i) == '#') {
answer[3] = i + 1;
break;
}
}
if(answer[3] != -1) break;
}
return answer;
}
}
728x90
'Problem Solving > Programmers' 카테고리의 다른 글
[프로그래머스, 140108] 문자열 나누기 (java) (0) | 2025.01.03 |
---|---|
[프로그래머스, 181847] 0 떼기 (java) (0) | 2025.01.03 |
[프로그래머스, 172928] 공원 산책 (java) (0) | 2024.12.23 |
[프로그래머스, 131704] 택배상자 (java) (2) | 2024.12.12 |
[프로그래머스, 49993] 스킬트리 (java) (0) | 2024.12.12 |