ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [SWEA] 2805 농작물 수확하기
    문제 풀이 2020. 4. 23. 22:32

    2805 농작물 수확하기


    풀이)


    농작물의 가치를 배열에 저장한 뒤,

    중간에 있는 행의 값부터 위아래 각자 행의 값까지 for문을 돌면서 더했다.


    코드)


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    #include <stdio.h>
    using namespace std;
     
    int arr[50][50];
     
    int main() {
        //freopen("input.txt", "r", stdin);
        int T = 0;
        scanf("%d"&T);
        for (int test_case = 1; test_case <= T; test_case++) {
            int n, result =0;
            scanf("%d"&n);
            
            int mid = n / 2;
     
            for (int i = 0; i < n; i++) {
                for (int j = 0; j < n; j++) {
                    scanf("%1d"&arr[i][j]);
                    if (i == mid) result += arr[i][j]; //중간행 값 더하기
                }
            }
            //fy는 중간 행 위의 행
            //sy는 중간 행 아래의 행
            int fy = mid - 1, sy = mid + 1;
            int sx = 1, ex = n - 2;
            while (mid--)
            {
                for (int i = sx; i <= ex; i++) {
                    result += arr[fy][i]; //중간행 위의 행값 더하기
                    result += arr[sy][i]; //중간행 아래의 행값 더하기
                }
                fy--;
                sy++;
                sx++;
                ex--;
            }
            printf("#%d %d\n", test_case,result);
        }
     
        return 0;
    }
    cs


    '문제 풀이' 카테고리의 다른 글

    [SWEA] 1928 Base Decoder  (0) 2020.04.27
    [백준] 17244번 아맞다우산  (0) 2020.04.26
    [SWEA] 2806 N-Queen  (0) 2020.04.23
    [SWEA] 1954 달팽이 숫자  (0) 2020.04.22
    [SWEA] 1824 혁진이의 프로그램 검증  (0) 2020.04.21

    댓글

Designed by Tistory.