백준 [ALGORITHM] - 2차원 배열의 합 (2167)
              
          2024. 12. 5. 11:19ㆍ코딩/백준 [ALGORITHM]
반응형
    
    
    
  N, M = map(int, input().split())
address = []
for _ in range(N):
    temp_num = list(map(int, input().split()))
    address.append(temp_num)
prefix_sum = [[0] * (M + 1) for _ in range(N + 1)]
for i in range(1, N + 1):
    for j in range(1, M + 1):
        prefix_sum[i][j] = (
            address[i-1][j-1] +
            prefix_sum[i-1][j] +
            prefix_sum[i][j-1] -
            prefix_sum[i-1][j-1]
        )
K = int(input())
for _ in range(K):
    x1, y1, x2, y2 = map(int, input().split())
    result = (
        prefix_sum[x2][y2]
        - prefix_sum[x1-1][y2]
        - prefix_sum[x2][y1-1]
        + prefix_sum[x1-1][y1-1]
    )
    print(result)
입력한 값에 대한 구간합을 구함
반응형
    
    
    
  '코딩 > 백준 [ALGORITHM]' 카테고리의 다른 글
| 백준 [ALGORITHM] - 알파벳 개수 (10808) (1) | 2024.12.06 | 
|---|---|
| 백준 [ALGORITHM] - 수들의 합2 (2003) (0) | 2024.12.05 | 
| 백준 [ALGORITHM] - 계산기 프로그램 (5613) (0) | 2024.11.21 | 
| 백준 [ALGORITHM] - ROT13 (4446) (0) | 2024.09.09 | 
| 백준[ALGORITHM] - 럭비 클럽 (2083) (0) | 2024.08.04 |