문제 설명
n × m 크기의 이차원 실수 배열 grid와 인덱스 (r, c)가 주어졌을 때, (r, c) 위치의 원소를 포함하여 상·하·좌·우 및 네 방향 대각선까지 최대 8방향 이웃을 모두 고려하여 평균값을 반환하는 solution 함수를 작성하시오.
배열의 경계를 넘어가는 칸은 제외하고, 유효한 칸들의 값만 사용하여 평균을 구합니다. 평균값은 소수점 셋째 자리에서 반올림해 소수 둘째 자리까지 반환합니다.
예를 들어, 아래와 같은 3×3 배열이 있다고 가정해 봅시다.
1.0 2.0 3.0
4.0 5.0 6.0
7.0 8.0 9.0
위 배열에서 (1, 1) 위치를 기준으로 고려되는 칸은 (0,0), (0,1), (0,2), (1,0), (1,1), (1,2), (2,0), (2,1), (2,2)이며, 이들의 평균값은 입니다.
제한 사항
grid는 n × m 크기의 이차원 실수 배열입니다.n(grid의 행 개수)은 1 이상 1,000 이하의 자연수입니다.m(grid의 열 개수)은 1 이상 1,000 이하의 자연수입니다.
grid의 각 원소는 -10,000 이상 10,000 이하의 실수입니다.r은 0 이상n - 1이하의 정수입니다.c는 0 이상m - 1이하의 정수입니다.
예시 테스트케이스 설명
| 테스트케이스 번호 | grid | r | c | return |
|---|---|---|---|---|
| 1 | [[1.0,2.0,3.0],[4.0,5.0,6.0],[7.0,8.0,9.0]] | 1 | 1 | 5.0 |
| 2 | [[10.0,20.0],[30.0,40.0]] | 0 | 0 | 25.0 |
| 3 | [[1.5,2.5,3.5],[3.0,4.0,5.0]] | 0 | 1 | 3.25 |
1번 테스트케이스 설명
- 주어진 배열에서
(1, 1)위치를 기준으로 고려되는 칸은(0,0),(0,1),(0,2),(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)이며, 이들의 평균값은 입니다.
2번 테스트케이스 설명
- 주어진 배열에서
(0, 0)위치를 기준으로 고려되는 칸은(0,0),(0,1),(1,0),(1,1)이며, 이들의 평균값은 입니다.
3번 테스트케이스 설명
- 주어진 배열에서
(0, 1)위치를 기준으로 고려되는 칸은(0,0),(0,1),(0,2),(1,0),(1,1),(1,2)이며, 이들의 평균값은 입니다.