티스토리 뷰

https://www.acmicpc.net/problem/16507

 

16507번: 어두운 건 무서워

첫 번째 줄에는 사진의 크기를 의미하는 정수 R, C (1 ≤ R, C ≤ 1,000)와 사진 일부분의 밝기 평균을 알아볼 개수를 의미하는 정수 Q (1 ≤ Q ≤ 10,000)가 주어진다. 다음 R개의 줄에 걸쳐 R×C 크기의 사

www.acmicpc.net

배열의 값을 입력받으며 a[i][j] 에 a[0][0] ~ a[i][j]까지의 누적합을 저장하였습니다.

밝기의 평균을 구해야하는 구간을 입력받으며 해당 구간의 합을 칸 수로 나누어 답을 구했습니다.


C++ 소스 코드

#include <cstdio>
using namespace std;
int a[1002][1002];
int main(){
    int r,c,q,temp;
    scanf("%d %d %d", &r, &c, &q);
    for(int i=1;i<=r;i++){
        for(int j=1;j<=c;j++){
            scanf("%d", &temp);
            a[i][j] = a[i-1][j] + a[i][j-1] -a[i-1][j-1]+ temp;
        }
    }
    int x1,y1,x2,y2;
    while(q--){
        scanf("%d %d %d %d", &x1, &y1, &x2, &y2);
        printf("%d\n", (a[x2][y2]-a[x1-1][y2]-a[x2][y1-1]+a[x1-1][y1-1])/((x2-x1+1)*(y2-y1+1)));
    }
    return 0;
}

'Algorithm > 알고리즘 문제풀이' 카테고리의 다른 글

프로그래머스) Lv3 - 가장 먼 노드  (0) 2020.09.11
BOJ) 1717 - 집합의 표현  (0) 2020.09.01
프로그래머스) Lv4 - 스티커 모으기(2)  (0) 2020.08.25
SWEA) 1209 - Sum  (0) 2020.08.15
SWEA) 1216 - 회문2  (0) 2020.08.14
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/06   »
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
글 보관함