题解 | #牛牛家的房子#

牛牛家的房子

https://ac.nowcoder.com/acm/problem/21607

太弱了 起初看不懂题目 看了上交的题解里才明白 代码也算是仿照大佬写的。

using namespace std;
int n,r;
int a[30][30];
int num[40][40];
void check(int x,int y){
    int xx=x,yy=y;
    for(int i =0;i<n;i++){
        for(int j =0;j<n;j++){
            if(abs(x-i)+abs(y-j)<=r&&a[i][j]>a[xx][yy]){//细节在于每次只是从原地探访其他可以在r时间内到达的房间    就有了且前面的条件   这也是题目给出的
                xx=i,yy=j;
            }
    }
    }
    if(xx!=x||yy!=y){
        num[xx][yy]+=num[x][y];
        num[x][y]=0;
        check(xx,yy);
    }
}
int main(){
    cin >> n>>r;
    for(int i =0;i<n;i++){
        for(int j =0;j<n;j++){
            cin >> a[i][j];
            num[i][j]=1;
        }
    }
    for(int i =0;i<n;i++){
        for(int j =0;j<n;j++){
            check(i,j);
        }
    }
    int sum =0,maxnum=0;
    for(int i =0;i<n;i++){
        for(int j =0;j<n;j++){
            if(num[i][j]>=1) sum++;
            maxnum=max(maxnum,num[i][j]);
        }
    }
    cout<<sum<<" "<<maxnum<<endl;
    return 0;
}
全部评论

相关推荐

ProMonkey2024:5个oc?厉害! 但是有一个小问题:谁问你了?😡我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了(别的帖子偷来的,现学现卖😋)
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务