P9023 题解
首先我们一看这个比较奇怪的数据范围,二维数组是肯定开不了的,那么我们就需要用两个一维数组来存储一下每行每列的反转情况了,由于同一行或者同一列被反转了偶数次之后等于没反转,所以我们就用
#include<bits/stdc++.h>
using namespace std;
int r[5000005],c[5000005];
int main(){
std::ios::sync_with_stdio(0);
int n,m,k,ans=0;
cin>>n>>m>>k;
for(int i=1;i<=k;i++){
char d;int x;
cin>>d>>x;
if(d=='R') r[x]=!r[x];
else c[x]=!c[x];
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(r[i]!=c[j]) ans++;
}
}
cout<<ans;
return 0;
}