본문 바로가기
알고리즘

[프로그래머스/JAVA]이웃한 칸

by writing turtle 2024. 11. 8.

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/250125

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

격자 정보와 특정 위치가 주어질 때 그 칸과 같은 색인 이웃한 칸의 개수를 구하는 문제

이 문제는 지시문 안에 푸는 방법이 적혀있어서 이러한 유형을 모르는 사람도 풀 수 있게 만들어져있다. 문제에서 시키는 대로만 코드를 작성해도 문제는 풀린다.

 

 
 

 

    public int solution(String[][] board, int h, int w) {
                int answer = 0;
        int n = board.length;
        int dh = 0, dw = 0;
        int[][] dir = {{0, -1}, {0, 1}, {-1, 0}, {1, 0}};
        
        for(int i=0; i<4; i++) {
        	dh = h + dir[i][0];
        	dw = w + dir[i][1];
        	if(dh < 0 || dh >= n || dw < 0 || dw >= n) continue;
        	if(board[dh][dw].equals(board[h][w])) answer++;
        }
        
        return answer;
    }

 

'알고리즘' 카테고리의 다른 글

[SWEA/JAVA] 1230 암호문3  (0) 2024.11.12
[SWEA/JAVA] 2001 파리퇴치  (0) 2024.11.11
[백준/JAVA] 1966 프린터큐  (0) 2024.11.10
[백준/JAVA] 9498 시험 성적  (2) 2024.11.09
[프로그래머스/JAVA] 가장 많이 받은 선물  (1) 2024.11.07