Submission

Status:
PPPPPPPPPP

Score: 100

User: Winzzwz

Problemset: วางโต๊ะ

Language: cpp

Time: 0.002 second

Submitted On: 2025-03-05 12:57:39

#include <bits/stdc++.h>
using namespace std;
using ll = long long;

int l,w,n,t[110][110],dp[110][110],cnt;

int main() {
    cin.tie(0)->sync_with_stdio(0);
    cin >> l >> w >> n;
    while (n--) {
        int x1,y1,x2,y2; cin >> x1 >> y1 >> x2 >> y2;
        for (int i = y1; i < y2; i++) {
            for (int j = x1; j < x2; j++) {
                t[i][j] = 1;
            }
        }
    }
    for (int i = 0; i < w; i++) {
        for (int j = 0; j < l; j++) {
            dp[i][j] = t[i][j];
            if (i > 0) dp[i][j] += dp[i-1][j];
            if (j > 0) dp[i][j] += dp[i][j-1];
            if (i > 0 && j > 0) dp[i][j] -= dp[i-1][j-1];
        }
    }
    for (int i = 2; i < w; i++) {
        for (int j = 2; j < l; j++) {
            int sum = dp[i][j];
            if (i > 2) sum -= dp[i-3][j];
            if (j > 2) sum -= dp[i][j-3];
            if (i > 2 && j > 2) sum += dp[i-3][j-3];
            if (sum == 0) cnt++;
        }
        //cout << "\n";
    }
    cout << cnt;

    return 0;
}