记录编号 582433 评测结果 AAAAAAAAAA
题目名称 删除他们! 最终得分 100
用户昵称 Gravatar在大街上倒立游泳 是否通过 通过
代码语言 C++ 运行时间 0.000 s
提交时间 2023-09-11 21:08:17 内存使用 0.00 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int n,m,q,s,x1,x2,yy,y2,hang,lie;
int main(){
    freopen("deleteit.in","r",stdin);
    freopen("deleteit.out","w",stdout);
    cin>>n>>m>>q;
    s=m*n;
    for(int i=1;i<=q;i++){
        cin>>x1>>yy>>x2>>y2;
        if(x1>x2) swap(x1,x2);
        if(yy>y2) swap(yy,y2);
        hang=(s-1)/m;
        lie=s-hang*m-1;//求出最后一个点坐标 
        if(x1>hang) continue;
        s-=(x2-x1+1)*(y2-yy+1);
        if(hang>x2) continue; 
        else 
        {
            if(y2<=lie) s+=(x2-hang)*(y2-yy+1);
            else{//y2>lie 
                s+=(x2-hang)*(y2-yy+1);
                s+=y2-max(yy-1,lie);
            }
        }
    }
    cout<<s;
    return 0;
}