标签:
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 497 Accepted Submission(s): 239
1 #include <stdio.h> 2 #include <string.h> 3 #include <algorithm> 4 using namespace std; 5 int main() 6 { 7 int T; 8 int n; 9 int i,j,k; 10 char a[55][56]; 11 scanf("%d",&T); 12 while(T--) 13 { 14 scanf("%d",&n); 15 for(i=0;i<n;i++) 16 { 17 scanf("%s",a[i]); 18 } 19 int l=strlen(a[0]); 20 21 int ans=0,x,y,flg; 22 for(i=0;i<l;i++) 23 { 24 flg=0; 25 x=0,y=i; 26 while(x<n && y<l) 27 { 28 if(a[x][y]==‘R‘ || a[x][y]==‘G‘) 29 { 30 if(flg==0) 31 ans++,flg=1; 32 } 33 else 34 { 35 flg=0; 36 } 37 x++,y++; 38 } 39 } 40 //printf("%d\n",ans); 41 42 for(i=1;i<l;i++) 43 { 44 flg=0; 45 x=n-1,y=i; 46 while(x>=0 && y<l) 47 { 48 if(a[x][y]==‘B‘ || a[x][y]==‘G‘) 49 { 50 if(flg==0) 51 ans++,flg=1; 52 } 53 else 54 { 55 flg=0; 56 } 57 x--,y++; 58 } 59 } 60 //printf("%d\n",ans); 61 62 for(j=1;j<n;j++) 63 { 64 flg=0; 65 x=j,y=0; 66 while(x<n && y<l) 67 { 68 if(a[x][y]==‘R‘ || a[x][y]==‘G‘) 69 { 70 if(flg==0) 71 ans++,flg=1; 72 } 73 else 74 { 75 flg=0; 76 } 77 x++,y++; 78 } 79 } 80 //printf("%d\n",ans); 81 82 for(j=0;j<n;j++) 83 { 84 flg=0; 85 x=j,y=0; 86 while(x>=0 && y<l) 87 { 88 if(a[x][y]==‘B‘ || a[x][y]==‘G‘) 89 { 90 if(flg==0) 91 ans++,flg=1; 92 } 93 else 94 { 95 flg=0; 96 } 97 x--,y++; 98 } 99 } 100 printf("%d\n",ans); 101 } 102 return 0; 103 }
标签:
原文地址:http://www.cnblogs.com/cyd308/p/4684911.html