比赛 |
20161116 |
评测结果 |
WEEEEEEEEE |
题目名称 |
删除他们! |
最终得分 |
0 |
用户昵称 |
楚修 |
运行时间 |
0.739 s |
代码语言 |
C++ |
内存使用 |
0.31 MiB |
提交时间 |
2016-11-16 11:23:22 |
显示代码纯文本
#include<cstdio>//2 3 2 0 1 0 2 0 2 1 2
#include<iostream>
#include<algorithm>
#include<cstring>
#include<vector>
using namespace std;// n hang m lie
int n,m,q,x1,x2,y1,y2,k=0;
int a,b;//记录zuijiejin且为0位置
vector<vector<int> >s;
void ji()
{
b--;
if (b==0)
{
a=a-1;
b=m;
}
s[a][b]=0;
}
void shu()
//shanchu 简单的可以算多少个。
{
if (x1==x2)
{
for(int i=y1;i<=y2;i++)
{ if(s[x1][i]!=0)
{
ji();
}
else return;
}
return;
}
else for(int i=y1;i<=m;i++)
{ if(s[x1][i]!=0)
{
ji();
}
else return;
}
if(x2=x1+1)
{
for(int i=1;i<=y2;i++)
{
if(s[x2][i]!=0)
{
ji();
}
else return;
}
}
else {
for(int i=x1+1;i<=x2-1;i++)
{
for(int j=1;j<=m;j++)
{if (s[i][j]!=0)
{
ji();
}
else return;
}
}
}
for(int i=1;i<=y2;i++)
{
if (s[x2][i]!=0)
{
ji();
}else return;
}
}
int main()
{
freopen("deleteit.in","r",stdin);
freopen("deleteit.out","w",stdout);//q 标记那些地方被删除了,用b0ol
cin>>n>>m>>q;
a=n,b=m;
s.resize(n);
for(int i=0;i<n;i++)
{
s[i].resize(m+1);
}
for(int i=0;i<n;i++)
for(int j=1;j<=m;j++)
s[i][j]=1;
for(int i=1;i<=q;i++)
{
cin>>x1>>y1>>x2>>y2;
shu();
}
for(int i=0;i<n;i++)
for(int j=1;j<=m;j++)
if ( s[i][j]==1)
k++;
cout<<k;
return 0;
}