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


프로그래밍 막 배우기 시작 했는데 랜덤 문제 돌려서

#include <iostream> using namespace std; int main() {     cin.tie(NULL);     cout.tie(NULL);     ios::sync_with_stdio(false);     int N, M, x1, x2, y1, y2, ans;     int arr[1501][1501];     cin >> N >> M;     for(int a = 0; a < N; a++){         cin >> x1 >> y1 >> x2 >> y2;         for(int x = x1; x < x2; x++){             for(int y = y1; y < y2; y++){                 arr[x][y]++;             }         }     }     for(int a = 0; a < M; a++){         ans = 0;         cin >> x1 >> y1 >> x2 >> y2;         for(int x = x1; x < x2; x++){             for(int y = y1; y < y2; y++){                 if(arr[x][y] > ans){                     ans = arr[x][y];                 }             }         }         cout << ans << "\n";     }     return 0; }

이렇게 짜봤는데 배열 크기가 너무 커서 프로그램이 안 돌아가네요 초보랑 안 맞는 문제인가요? 배열 크기 줄여서 예시 넣으면 잘 나오긴 하는데