코린이의 소소한 공부노트

[LeetCode/Medium] 2596. Check Knight Tour Configuration 본문

코딩테스트 풀이/JAVA

[LeetCode/Medium] 2596. Check Knight Tour Configuration

무지맘 2023. 3. 19. 23:10

1. Input

1) int[][] grid

- n == grid.length == grid[i].length

- grid0부터 n*n-1까지 나이트가 이동할 곳을 순서대로 담아 놓은 2차원 배열이다.

- grid[0][0] == 0이다.

 

2. Output

1) 나이트가 grid에 명시된 대로 n*n-1까지 유효하게 움직일 수 있다면 true를 반환

 

3. Constraint

1) 3 <= n <= 7

2) 0 <= grid[row][col] < n * n

3) grid에는 중복 요소가 없다.

 

4. Example

Input: grid = [[0,3,6],[5,8,1],[2,7,4]] -> Output: false

설명: 7에서 8로 이동할 수 없다.

 

5. Code

1) 첫 코드(2023/03/19)

int num = 1, n = grid.length, x = 0, y = 0;
boolean answer = true;
while(num<n*n && answer){
    for(int i=0 ; i<n ; i++)
        for(int j=0 ; j<n ; j++)
            if(grid[i][j]==num){
                if(Math.pow(i-x,2)+Math.pow(j-y,2)!=5)
                    answer = false;
                x = i; y = j;
            }
    num++;
}
return answer;