2022-09-22-微软二面-45min

https://www.nowcoder.com/discuss/1060275

自我介绍,讲研二的论文,对研一做的高可靠并行匹配模型感兴趣问了一下,二十几分钟吧。

题目是个bfs扩展步数。空位置为0,好橘子为1,坏橘子为2,每一步坏橘子往4个方向上传播把好的变坏掉的。
说没什么错,能不能优化一下,我说是Omn了,
后说时间空间都做得不错,这个next队列能不能不用,于是就有了下面的注释。
说行没什么了,没要反问了。。

#include <iostream>
#include <vector>
#include <queue>
using namespace std;

#define _for(i,a,b) for(int i=a;i<b;i++)

inline bool valid(int i, int j, int n, int m){
    return 0<=i&&i<n&&0<=j&&j<m;
}

pair<int,int> stableStepNum(vector<vector<int>> a){
    int ans=0, n=a.size(),m=a[0].size(),ngood=0;
    queue<pair<int,int>> q;
    _for(i,0,n){
        _for(j,0,m){
            if(a[i][j]==2){
                q.push({i,j});
                // a[i][j]=-1; // ?
            }else if(a[i][j]==1)
                ngood++;
        }
    }
    int dir[5]={0,1,0,-1,0};
    while(!q.empty()){
        queue<pair<int,int>> next;
        // int nq=q.size();
        // _for(k,0,nq){
        //     q.push({});
        // }
        while(!q.empty()){
            auto t = q.front();
            q.pop();
            for(int i=0;i<4;i++){
                int nx=t.first+dir[i],ny=t.second+dir[i+1];
                if(valid(nx,ny,n,m)&&a[nx][ny]==1){
                    next.push({nx,ny});
                    a[nx][ny]=2;
                    ngood--;
                }
            }
        }
        ans++;
        q=next;
    }
    return {ans, ngood};
}

int main() {
    // you can write to stdout for debugging purposes, e.g.
    std::cout << "This is a debug message" << std::endl;

    return 0;
}
#微软##微软苏州##面试##23届秋招笔面经##微软面经#
全部评论
请问是2道题吗?橘子这题怎么做呀
1 回复 分享
发布于 2022-09-22 10:58 广东
强哇,跟我二面完全不一样
点赞 回复 分享
发布于 2022-09-27 10:53 湖北
我看有的投票,说是有的大佬已经收到aa面了,也不知道真的假的
点赞 回复 分享
发布于 2022-09-23 18:51 上海
楼主有没有接到AA面通知呀?
点赞 回复 分享
发布于 2022-09-23 16:58 上海
资料哥yyds,有收到aa面消息么
点赞 回复 分享
发布于 2022-09-23 13:00 上海
楼主接到终面通知了嘛~
点赞 回复 分享
发布于 2022-09-23 12:23 陕西
请问大佬是怎么优化的呀?注释没看太明白
点赞 回复 分享
发布于 2022-09-22 16:31 广西
上海的微软吗
点赞 回复 分享
发布于 2022-09-22 16:12 北京
请问一下是哪个部门呀?有问八股什么的吗?
点赞 回复 分享
发布于 2022-09-22 15:05 广东
我也是这道题
点赞 回复 分享
发布于 2022-09-22 14:45 上海
老哥有后续更新下!
点赞 回复 分享
发布于 2022-09-22 11:45 浙江

相关推荐

大方的大熊猫准备进厂:1.教育背景:你希望从事什么专业的工作你的主修课就是什么;成绩优秀是你应该做的,没什么可描述的,成绩不优秀也许人家在大学忙着创业呢?(成绩优秀不一定是好事,只能说明多元化的大学你上成了高中,没有真正上明白大学,反而体现了你死板,不爱社交,没有别的突出能力) 2.实践经历:你想表达的意思没有说清楚。你是说你会个性化服务,还是你有实习经历。如果没有带来,经济收益,表彰,更好的发展前景,那你还不如说说提升了自己哪些技能。你说有人给你送锦旗我都能明白你优秀,但是你说你会xxxx,你说这话谁信,证据呢。 3.入伍经历:你描述的就是你的工作职责或者你应该做的,并没有体现出来你把这个事情做好了,而且入伍经历并不能证明你能干好你要应聘的工作,不如只写经历其余所有内容都不写。 4.荣誉技能:重点突出一下,但不要过多描述,这些荣誉的含金量懂得都懂。 重点:你要应聘什么工作(具体岗位,实习生不具体),你的期望薪资
点赞 评论 收藏
分享
评论
4
23
分享

创作者周榜

更多
牛客网
牛客企业服务