programming/알고리즘 풀이
백준(Baekjoon)_2167번 문제풀이
몽구스_
2020. 1. 28. 00:25
728x90
반응형
#include <stdio.h>
int main(void)
{
int n, m;
int i, j, k;
int a, b, x, y;
int num, total = 0;
int arr[300][300] = {0}; //배열 넉넉하게 설정하여 런타임에러방지
scanf("%d %d", &n, &m);
for (i = 0; i < n; i++){
for (j = 0; j < m; j++)
scanf("%d", &arr[i][j]);
}
scanf("%d", &num);
for (k = 0; k < num; k++){
scanf("%d %d %d %d", &a, &b, &x, &y);
for (i = a - 1; i <= x - 1; i++){ //배열은 (0,0)부터 시작하지만 문제에선 (1,1)부터 시작하므로 1씩 빼줌
for (j = b - 1; j <= y - 1; j++)
total += arr[i][j]; //각각배열에 있던거 더해주기
}
printf("%d\n", total);
total = 0; //다음 합계를 위해 초기화
}
}
생각보다 쉬운 문제인데 문제를 처음에 못이해해서 조금 시간이 걸렸다.
일단 백준에서 제시하는 조건에 부합하게끔 배열을 잡아줘야 런타임에러가 안걸린다.
그점을 주의하고 나머지를 조금씩 수정하여 풀었다.
total을 초기화안하는 둥 기초적인 실수를 많이 함.
/0127
728x90
반응형