比赛 20161116 评测结果 AWWWWEWEEE
题目名称 删除他们! 最终得分 10
用户昵称 要要要不吃药 运行时间 0.379 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2016-11-16 10:26:19
显示代码纯文本
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
	freopen("deleteit.in","r",stdin);
	freopen("deleteit.out","w",stdout);
	int m,n,q,k,i,j,x1[1001],y1[1001],x2[1001],y2[1001],ans=0;//行、列坐标
	scanf("%d%d%d",&m,&n,&q);//m行n列
	int f[m][n];//1表示已删除
	for(i=0;i<q;i++)scanf("%d%d%d%d",&x1[i],&y1[i],&x2[i],&y2[i]);
	for(i=0;i<q;i++){
		for(j=x1[i];j<=x2[i];j++){
			for(k=y1[i];k<=y2[i];k++)f[j][k]=1;
		}
		if(f[j][k-1]==1&&k!=0){
			f[j][k]=1;
			f[j][k]=0;
		}
		if(k==0&&j!=0&&f[j-1][n]==1){
			f[j-1][n]=0;
			f[j][k]=1;
		}
	}
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			if(f[i][j]!=1){
				ans++;
				if(f[i][j+1]==1)break;
			}
		}
	}
	printf("%d",ans);
	return 0;
}