比赛 20161116 评测结果 AWAWWWWWWW
题目名称 删除他们! 最终得分 20
用户昵称 zihahahaha 运行时间 0.004 s
代码语言 C++ 内存使用 4.13 MiB
提交时间 2016-11-16 09:49:07
显示代码纯文本
#include<cstdio>
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
#define maxn (1000005)
int n,m,q;
int h[maxn];

int main()
{
	freopen("deleteit.in","r",stdin);
	freopen("deleteit.out","w",stdout);
	scanf("%d%d%d",&n,&m,&q);
	for(int i=0;i<n;i++) h[i]=m;
	int nn=n;
	n--;
	for(int i=1;i<=q;i++)
	{
		int x1,x2,y1,y2;
		scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
		int y=y2-y1+1;
		for(int k=x1;k<=x2;k++)
		{
			if(h[k]>=y)
			{
				h[n]-=y;
				while(h[n]<0)
				{
					h[n-1]+=h[n];
					n--;
				}
			}
			else if(h[k]>0)
			{
				int j=k;
				while(h[j]<0)
				{
					h[j-1]+=h[j];
					j--;
				}
			}
			else break;
		}
	}
	int num=0;
	for(int i=0;i<nn;i++)
	{
		if(h[i]>0) num+=h[i];
		else break;
	}
	cout<<num<<'\n';
	return 0;
}