문제 풀이 및 개발 공간

[백준] 2167번 2차원 배열의 합 (silver 5 본문

백준공부/java

[백준] 2167번 2차원 배열의 합 (silver 5

gomduri43 2023. 10. 31. 21:58

import java.io.*;
import java.util.*;

public class Main{
    public static void main(String[]args) throws IOException{
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
        StringTokenizer st=new StringTokenizer(br.readLine());
        int n=Integer.valueOf(st.nextToken());
        int m=Integer.valueOf(st.nextToken());
        int[][] num=new int[n+1][m+1];

        for(int i=1; i<=n; i++){
            st=new StringTokenizer(br.readLine());
            for(int j=1; j<=m; j++){
                num[i][j]=Integer.valueOf(st.nextToken())+num[i][j-1];
            }
        }
        int t=Integer.valueOf(br.readLine());
        for(int test=0; test<t; test++){
            st=new StringTokenizer(br.readLine());
            int i=Integer.valueOf(st.nextToken());
            int j=Integer.valueOf(st.nextToken());
            int x=Integer.valueOf(st.nextToken());
            int y=Integer.valueOf(st.nextToken());
            int temp=0;
            for(int k=i; k<=x; k++){
                temp+=num[k][y]-num[k][j-1];
            }
            bw.write(temp+"\n");
        }
        bw.flush();
    }
}