[Java] Do it! 코딩테스트 - 구간합 구하기(7.30)

EunBi Na·2022년 7월 30일
0

public class 구간합 구하기{
	public static void main(String[] args) throws Exception {
    	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
        int N = Integer.parseInt(st.nextToken());
        int M = Integer.parseInt(st.nextToken());
        int A[][] = new int[N + 1][N + 1];
        for (int i = 1; i <= N; i++) {
        	st = new StringTokenizer(br.readLine());
            for (int j = 1; j <= N; j++) {
            	A[i][j] = Integer.parseInt(st.nextToken());
           }
       }
       int D[][] = new int[N + 1][N + 1];
       for (int i = 1; i <= N; i++) {
       	for (int j = 1; j <= N; i++) {
        	D[i][j] = D[i][j - 1] + D[i - 1][j] - D[i - 1][j - 1] + A[i][j];
       	   }
   	   }
     	for (int i = 0; i < M; i++) {
        st = new StringTokenizer(br.readLine());
        int x1 = integer.parseInt(st.nextToken());
        int y1 = integer.parseInt(st.nextToken());
        int x2 = integer.parseInt(st.nextToken());
        int y2 = integer.parseInt(st.nextToken());
        int result = D[x2][y2] - d[x1 - 1][y2] - D[x2][y1 - 1] + D[x1 - 1][y1 - 1]
        system.out.println(result);
      }
    }
  }  
}

profile
This is a velog that freely records the process I learn.

0개의 댓글