문제 링크 : www.acmicpc.net/problem/2167
내 풀이(2021.1.2.) :
#include <iostream>
using namespace std;
int arr[300][300] = { 0 }; // [x][y]
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int N, M; cin >> N >> M;
for (int j = 0; j < N; j++) { // x축
for (int i = 0; i < M; i++) { // y축
int temp; cin >> temp;
arr[i][j] = temp;
}
}
int K; cin >> K;
for (int k = 0; k < K; k++) {
int sum = 0;
int i, j, x, y; cin >> i >> j >> x >> y;
for (int b = j - 1; b <= y - 1; b++) { // x축
for (int a = i - 1; a <= x - 1; a++) { // y축
sum += arr[b][a];
}
}
cout << sum << endl;
}
return 0;
}
1) 2차원 배열 문제에서 x, y축을 정확히 정의하는 것이 중요하다
2) int의 범위 = -231 ~ 231-1
unsigned int의 범위 = 0 ~ 232-1
long의 범위 = -231 ~ 231-1
long long의 범위 = -263 ~ 263-1
'알고리즘 > 구현' 카테고리의 다른 글
백준 14503번 : 로봇 청소기 (0) | 2021.01.10 |
---|---|
백준 10757번 : 큰 수 A+B (0) | 2021.01.04 |
백준 14891번 : 톱니바퀴 (0) | 2021.01.03 |
백준 1475번 : 방 번호 (0) | 2021.01.01 |
코딩 테스트에서 '구현' 카테고리는 무엇일까요? (0) | 2021.01.01 |