fork download
  1. #include <stdio.h>
  2. int main()
  3. {
  4. int t,n,i,j,count,countr1,countr2,present;
  5. scanf("%d",&t);
  6. while(t--)
  7. {
  8.  
  9. count=0;
  10. countr1=0;
  11. countr2=0;
  12. present=0;
  13. scanf("%d",&n);
  14. char s[2][n];
  15. int visited[100000]={0};
  16. for(i=0;i<2;i++)
  17. for(j=0;j<n;j++)
  18. scanf(" %c",&s[i][j]);
  19. for(i=0;i<2;i++)
  20. for(j=0;j<n;j++)
  21. {
  22. if(s[i][j]=='*')
  23. count+=1;
  24. }
  25. // printf("count=%d",count);
  26. if(count==1||count==0)
  27. printf("0\n");
  28. else
  29. {
  30. for(i=0;i<n;i++)
  31. {
  32. if(s[0][i]=='*')
  33. {
  34. visited[i]=1;
  35. countr1+=1;
  36. }
  37. }
  38. for(i=0;i<n;i++)
  39. if(s[1][i]=='*')
  40. {
  41. present=1;
  42. break;
  43. }
  44. for(i=0;i<n;i++)
  45. {
  46. if(s[1][i]=='*' && visited[i]==0)
  47. countr2+=1;
  48. }
  49. // printf("countr1=%d countr2=%d\n",countr1,countr2);
  50. if(countr2==1)
  51. printf("%d\n",countr1+countr2);
  52. else if(countr2>0)
  53. printf("%d\n",countr1+countr2-2+1);
  54. else if(present==1 && countr2==0)
  55. printf("%d\n",(countr1-1)+1);
  56. else
  57. printf("%d\n",countr1-1);
  58. }
  59. }
  60. return 0;
  61.  
  62. }
  63.  
Success #stdin #stdout 0s 16312KB
stdin
3
6
***...
...***
2
..
**
10
*..*..*..*
.*..*..**.
stdout
5
1
7