"If you do nothing, nothing will happen."

프로그래밍

[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;

    }

'프로그래밍' 카테고리의 다른 글

[HackerRank] Sherlock and Anagrams  (0) 2023.02.20
[HackerRank] New Year Chaos  (0) 2023.02.20
[Hackerrank] Repeated String  (0) 2023.02.20
[Hackerrank] Jumping On Cloud  (0) 2023.02.20
[Hackerrank] Counting Valleys  (0) 2023.02.20