标签:
Time Limit: 15000/5000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)
Total Submission(s): 1800 Accepted Submission(s):
589
1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 using namespace std; 5 char ch[1005][1005]; 6 int a[1005],b[1005]; 7 int main() 8 { 9 int w,T,n,m,t,x,y,i,j,k; 10 scanf("%d",&T); 11 for(w=1; w<=T; w++) 12 { 13 scanf("%d",&n); 14 for(i=0; i<n; i++) 15 scanf("%s",ch[i]); 16 memset(a,0,sizeof(a)); 17 memset(b,0,sizeof(b)); 18 scanf("%d",&m); 19 while(m--) 20 { 21 scanf("%d%d",&x,&y); 22 x--,y--; //注意输入从(1,1)开始 23 a[x]++; //记录每一行变换的次数 24 b[y]++; //记录每一列变换的次数 25 if(a[x]==2) //出现2,则表示变换2次,也就是没变,所以0表示不变,1表示变 26 a[x]=0; 27 if(b[y]==2) 28 b[y]=0; 29 } 30 int s=0; 31 for(i=0; i<n; i++) 32 for(j=0; j<n; j++) 33 { 34 if(a[i]+b[j]==1) //只有出现1才是变换了,0或2都是保持不变 35 { 36 if(ch[i][j]==‘b‘) 37 s++; 38 } 39 else 40 { 41 if(ch[i][j]==‘w‘) 42 s++; 43 } 44 } 45 printf("Case #%d: %d\n",w,s); 46 } 47 return 0; 48 }
标签:
原文地址:http://www.cnblogs.com/pshw/p/5232538.html