題目連結: https://zerojudge.tw/ShowProblem?problemid=d914
# 解題思路
紀錄兩個棋盤的棋子狀況,如果有一點不一樣,且任意棋盤每有棋子就加一,否則加二,其餘的不加!!
# 程式碼
#include <bits/stdc++.h> | |
using namespace std; | |
int N,M; | |
int MapN[20][20]={0},MapM[20][20]={0}; | |
int main(){ | |
while(cin>>N){ | |
memset(MapN,0,20),memset(MapM,0,20); | |
for(int i=0,x,y,color;i<N;i++){ | |
cin>>x>>y>>color; | |
MapN[x][y] += color ? 1 : -1; | |
} | |
cin>>M; | |
for(int i=0,x,y,color;i<M;i++){ | |
cin>>x>>y>>color; | |
MapM[x][y] += color ? 1 : -1; | |
} | |
int sum=0; | |
for(int i=1;i<=19;i++){ | |
for(int j=1;j<=19;j++){ | |
if(MapN[i][j]!= MapM[i][j]){ | |
if(MapN[i][j]==0||MapM[i][j]==0) | |
sum+=1; | |
else | |
sum+=2; | |
} | |
} | |
} | |
cout<<sum<<endl; | |
} | |
} |