프로그래밍
[Hackerrank] 2D Array – DS
tedhong
2023. 2. 20. 12:53
2019-05-20 글쓴이 TED HONG
[Hackerrank] 2D Array – DS
2중 배열안에서 모래시계 모양의 패턴을 찾아
해당 좌표의 값을 모두 더했을 때 가장 큰 값을 찾는 문제
음수 비교가 필요한 경우가 있으므로 결과값 변수를 int.MinValue로 초기화 한다.
static int hourglassSum(int[][] arr) {
int result = int.MinValue;
int row = arr.Length;
for (int i = 0; i < row -2; i++)
{
int col = arr[i].Length;
for (int j = 0; j < col -2; j++)
{
int sum = arr[i][j] + arr[i][j + 1] + arr[i][j + 2];
sum += arr[i + 1][j + 1];
sum += (arr[i+2][j] + arr[i+2][j + 1] + arr[i+2][j + 2]);
if (result < sum) result = sum;
}
}
return result;
}