#include<bits/stdc++.h> using namespace std; char a[101][101]; int n,m,xx,yy,ll,flag=1; int f1(){ for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ if(a[i][j]=='.')continue; int l1=0,l2=0; while(a[i+l1][j]!='.'&&i+l1<=n)l1++; while(a[i][j+l2]!='.'&&j+l2<=m)l2++; cout<<i<<" "<<j<<" "<<min(l1,l2)<<endl; xx=i;yy=j;ll=min(l1,l2); return 0; } } } int f2(){ for(int i=n;i;i--){ for(int j=m;j;j--){ if(a[i][j]=='.')continue; int l1=0,l2=0; while(a[i-l1][j]!='.'&&i-l1!=0)l1++; while(a[i][j-l2]!='.'&&j-l2!=0)l2++;
flag=0; cout<<i-max(l1,l2)+1<<" "<<j-max(l1,l2)+1<<" "<<max(l1,l2); return 0; } } } int main(){ cin>>n>>m; for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)cin>>a[i][j]; f1(); for(int i=0;i<ll;i++){ for(int j=0;j<ll;j++){ a[xx+i][yy+j]='.'; } } f2(); if(flag){ cout<<xx<<" "<<yy<<" "<<ll<<endl; } return 0;

化简一下代码#includebitsstdc++husing namespace std;char a101101;int nmxxyyllflag=1;int f1找第二个建筑 	forint i=1;i=n;i++		forint j=1;j=m;j++			ifaij==continue;			int l1=0l2=0;			whileai+l1j!=&&i+l1=nl1++;			whil

原文地址: https://www.cveoy.top/t/topic/iO31 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录