社区讨论

80pts求条,条闭关

B4263[GESP202503 四级] 荒地开垦参与者 2已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@mhj9p3lt
此快照首次捕获于
2025/11/03 23:00
4 个月前
此快照最后确认于
2025/11/03 23:00
4 个月前
查看原帖
两个wa
CPP
#include <iostream>
using namespace std;
int n,m;
int map[1015][1015];
int arr[1015][1015];
//0对应. 1对应#
int main(){
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            char c;
            cin>>c;
            if(c=='#') map[i][j]=1;
        }
    }
    int ans=0,ansx,ansy;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            if(map[i][j]==0){
                arr[i][j]=4-map[i-1][j]-map[i+1][j]-map[i][j+1]-map[i][j-1];
            }
        }
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            int cnt=0;
            if(map[i][j]==1){
                cnt+=arr[i-1][j]==3;
                cnt+=arr[i+1][j]==3;
                cnt+=arr[i][j+1]==3;
                cnt+=arr[i][j+1]==3;
                if(cnt>ans){
                    ans=cnt;
                    ansx=i;
                    ansy=j;
                }
            }
            
        }
    }
    map[ansx][ansy]=0;
    int rellans=0;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            if(map[i-1][j]==0&&map[i+1][j]==0&&map[i][j-1]==0&&map[i][j+1]==0&&map[i][j]==0) rellans++;
        }
    }
    cout<<rellans;
}

回复

3 条回复,欢迎继续交流。

正在加载回复...