DINGA DINGA
article thumbnail
Published 2021. 8. 29. 20:36
[HackerRank] 2D Array - DS C & C++/HackerRank
728x90

https://www.hackerrank.com/challenges/2d-array/problem

 

2D Array - DS | HackerRank

How to access and use 2d-arrays.

www.hackerrank.com

Data Structures > Arrays

 

2차원 배열이 주어지면 배열 속 숫자의 최댓값의 합을 리턴한다.

 

 

코드

int hourglassSum(int arr_rows, int arr_columns, int** arr) {
    int max = -63, sum;
    for(int i = 0; i < 4; i++){
        for(int j = 0; j < 4; j++){
            sum = 0;
            for(int k = i; k <= i + 2; k++){
                for(int l = j; l <= j + 2; l++){
                    sum += arr[k][l];
                }
            }
            sum -= (arr[i+1][j] + arr[i+1][j+2]);
            if(sum > max) max = sum;
        }
    }
    return max;
}

 

설명

max는 가능한 최소의 값인 -63으로 지정하고, 숫자들의 합을 저장할 sum을 선언한다.

이중 for 루프를 이용해 배열의 각 숫자의 합을 sum에 더한다.

max와 비교하고, max보다 sum이 크면 max의 값을 업데이트한다.

모든 과정이 끝나면 max를 리턴한다.

 

728x90

'C & C++ > HackerRank' 카테고리의 다른 글

[HackerRank] Staircase  (0) 2021.08.29
[HackerRank] Quicksort 1 - Partition  (0) 2021.08.29
[HackerRank] Print in Reverse  (0) 2021.08.29
[HackerRank] Tree: Level Order Traversal  (0) 2021.08.13
[HackerRank] Find Digits  (0) 2021.08.13