Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int main()
- {
- int n,m;
- cin>>n>>m;
- char mat[n][m];
- int a1=-1,b1=-1,a2=-1,b2=-1, aPom=0, bPom=0;
- int x1=-1,y1=-1,x2=-1,y2=-1, xPom=0, yPom=0;
- for(int i=0;i<n;i++)
- for(int j=0;j<m;j++)
- {
- cin>>mat[i][j];
- if(mat[i][j]=='.'){
- if(a1 != -1)
- aPom = 1;
- if(b2 != -1 && b2 == j)bPom = 1;
- }
- if(mat[i][j] == '#')
- {
- if(a1==-1){
- a1=i;b1=j;
- }else if(i == a1 && aPom == 0)b2 = j;
- if(b2 != -1 && bPom == 0 && b2==j) a2=i;
- }
- }
- for(int i = 0; i<n;i++)
- {
- for(int j = 0; j<m;j++)
- {
- if(mat[i][j] == '#' && !(((a1==i || a2 == i) && j>=b1 && j <= b2) || ((b1 ==j || b2 ==j) && i>=a1 &&i<=a2)))
- {
- x1 = i;y1=j;
- while(mat[i][j]=='#' && j<m)j++;
- j--;
- y2=j;
- while(mat[i][j]=='#' && i < n)i++;
- i--;
- x2=i;
- break;
- }
- }
- if(x1 != -1)break;
- }
- cout << (a2-a1+1)*(b2-b1+1) + (x2-x1+1)*(y2-y1+1) << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement