求帮助
2026-09-06 15:56:56
发布于:上海
有人帮我一下吗,呜呜呜呜,真的不懂啊
全部评论 2
q
1周前 来自 浙江
0#include<bits/stdc++.h>
#pragma GCC optimize(3)
using namespace std;
char a[1010][1010]={};
int c[1010][1010]={};
int dx[8]={-1,1,0,0};
int dy[8]={0,0,-1,1};
int main(){
int n,m,cnt=0;
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
int sum=0,p=-1;
for(int k=0;k<4;k++){
int x=i+dx[k];
int y=j+dy[k];
if(x<1 || x>n || y<1 || y>m){
continue;
}
if(a[x][y]'#'){
sum++;
p=k;
}
}
if(a[i][j]'.' && sum1){
int tx=i+dx[p];
int ty=j+dy[p];
c[tx][ty]++;
}else if(a[i][j]'.' && sum0){
cnt++;
}else if(a[i][j]'#' && sum==0){
c[i][j];
}
}
}
int maxn=-1;
for(int i=1;i<=n;i){
for(int j=1;j<=m;j++){
maxn=max(maxn,c[i][j]);
}
}
cout<<(cnt+maxn);
return 0;
}1周前 来自 广东
0


















有帮助,赞一个