728x90
반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/250125?language=java
생각
- BFS 알고리즘의 기초라고 생각했다.
- 구현 방향이 그대로 문제에 제시되어있어서 어렵지 않게 풀 수 있었다.
코드
public class Main {
public static void main(String[] args) {
System.out.println(solution(new String[][]{{"blue", "red", "orange", "red"}
, {"red", "red", "blue", "orange"}
, {"blue", "orange", "red", "red"}
, {"orange", "orange", "red", "blue"}}, 1, 1));
}
public static int solution(String[][] board, int h, int w) {
int answer = 0;
String board_color = board[h][w];
for (int i = 0; i < dh.length; i++) {
int h_check = h+dh[i];
int w_check = w+dw[i];
if(0 <= h_check && h_check < board.length && 0 <= w_check && w_check < board[0].length) {
if(board_color.equals(board[h_check][w_check])) {
answer++;
}
}
}
return answer;
}
public static int[] dh = new int[]{0, 1, -1, 0};
public static int[] dw = new int[]{1, 0, 0, -1};
}
다른 사람 코드
- 참신하게 있는 다른 사람들 코드가 있었나 살펴보았지만 다 똑같아서 PASS
728x90
반응형
'Dev > Algorithm' 카테고리의 다른 글
[프로그래머스] 달리기 경주 (0) | 2024.05.18 |
---|---|
[프로그래머스] 데이터 분석 (0) | 2024.05.18 |
[프로그래머스] 개인정보 수집 유효기간 (0) | 2024.05.17 |
[프로그래머스] 가장 많이 받은 선물 (2) | 2024.05.17 |
[프로그래머스] 붕대 감기 (0) | 2024.05.17 |