七牛云笔试

感觉已经没什么机会了 但还是做一下吧

  • 记录行数和列数,分别置0
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0
     * @param matrix int整型vector<vector<>> m行n列矩阵
     * @return int整型vector<vector<>>
     */
    vector<vector<int> > setZeroes(vector<vector<int> >& matrix) {
        vector<int> row,col;
        for(int i=0;i<matrix.size();i++){
            for(int j=0;j<matrix[i].size();j++){
                if(matrix[i][j]==0){
                    row.push_back(i);
                    col.push_back(j);
                }
            }
        }
        for(auto v:row){
            for(int j=0;j<matrix[v].size();j++){
                matrix[v][j]=0;
            }
        }
        for(auto v:col){
            for(int i=0;i<matrix.size();i++){
                matrix[i][v]=0;
            }
        }

        return matrix;
    }
};
  • 不太清楚数据范围,不过应该不大 就直接暴力了,枚举每个点,check每个点bfs能否都走到m和n
/**
 * struct TreeNode {
 *	int val;
 *	struct TreeNode *left;
 *	struct TreeNode *right;
 *	TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 * };
 */
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 输入一个二叉树,和两个int值,返回最底层公共父节对应的值。
     * @param root TreeNode类 二叉树的根节点
     * @param m int整型 第一个值
     * @param n int整型 第二个值
     * @return int整型
     */
    int lowestCommonAncestor(TreeNode* root, int m, int n) {
        return dfs(root,m,n);
    }
    bool check(TreeNode* root,int m,int n){
        if(!root) return false;
        queue<TreeNode*> q;
        q.push(root);
        int cnt=0;
        while(q.size()){
            TreeNode* u=q.front();
            q.pop();
            if(u->val==m||u->val==n) cnt++;
            if(u->left) q.push(u->left);
            if(u->right) q.push(u->right);
        }
        return cnt==2;
    }
    int dfs(TreeNode* root,int m,int n){
        if(check(root->left,m,n)) return dfs(root->left,m,n);
        if(check(root->right,m,n))   return dfs(root->right,m,n);
        return root->val;
    }

};






  • 正解应该是dp,没给数据范围试了一发暴力居然过了......
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param weights int整型vector 酒的重量
     * @return int整型
     */
    bool check(int x,int sz){
        vector<int> res;
        for(int j=0;j<sz;j++){
            res.push_back(x>>j&1);
        }
        res.push_back(x&1);//第0位
        for(int i=1;i<res.size();i++){
            if(res[i]==1&&res[i]==res[i-1]) return false;
        }
        return true;
    }
    int maxWine(vector<int>& weights) {
        int ans=0;
        for(int i=0;i<(1<<weights.size());i++){
            if(!check(i,weights.size())) continue;
             int res=0;
            for(int j=0;j<weights.size();j++){
                if(i>>j&1){
                    res+=weights[j];
                }
            }
            ans=max(ans,res);
        }
            return ans;
    }

};

全部评论
应该对应lc这几道。 73. 矩阵置零 236. 二叉树的最近公共祖先 213. 打家劫舍 II
5 回复 分享
发布于 2024-05-06 20:41 江苏
别怪自己哈,是它的问题,太ex了
2 回复 分享
发布于 2024-05-07 11:18 湖北
原来都是力扣原题啊我自己硬推只ac两题半 不知道还有机会没
1 回复 分享
发布于 2024-05-06 21:00 湖南
单选多选都有不确定的,代码题都是原题 秒了,总结 鼠鼠我太菜了
1 回复 分享
发布于 2024-05-06 20:36 江苏
ak了 不发面是咋回事
点赞 回复 分享
发布于 2024-05-16 16:37 四川
ak有机会面试吗
点赞 回复 分享
发布于 2024-05-06 22:49 江苏
为啥没机会了
点赞 回复 分享
发布于 2024-05-06 21:09 重庆
可以dp,取两段就行了,力扣原题
点赞 回复 分享
发布于 2024-05-06 20:48 浙江
佬tql
点赞 回复 分享
发布于 2024-05-06 20:25 浙江

相关推荐

双非硕java后端,目前只有一个河北的国企外包实习,很是迷茫,面了几家基本都没消息,不知道是沉淀一下冲秋招还是怎么办
程序员小白条:有过实习经历的话,就沉淀等秋招吧, 没实习经历必须找一个,不然简历都没啥好写了
点赞 评论 收藏
分享
梦想是成为七海千秋:卷到什么程度啊,而且央企跟着大厂卷就离谱,大厂有那么十六薪还有绩效年终奖什么的,央企加班都不一定给加班费吧
投递中广核等公司7个岗位
点赞 评论 收藏
分享
07-02 22:21
门头沟学院 Java
继续出第四期,对前几期感兴趣的朋友,可以直接去主页看,这位同学没有发在校经历和学历相关的内容,那我就没有要打码的东西了先看专业技能部分,写的6点,有些偏少了,描述的内容也偏少,可以参考图二进行优化然后看项目经历部分,一眼看去,没什么大问题,只是项目太大众化了,如果有时间可以尝试去找一些冷门的项目,没时间的话,就专注于优化技术亮点吧。第一个项目没有明显问题看第二个,首先,第二个项目的,技术亮点的样式和第一个不一样,这个你是怎么想的,是故意的吗,我觉得还是改成一样的好,这样整个简历会有一个统一的风格,然后感觉出你想把侧重点放在第一个项目上,然后第二个项目写的亮点就简单了很多,简单一些是正常的,但也不用反差这么大,建议改出两点左右向第一个项目中那样用比较好的技术,实现了某个功能之后,再加一些数字指标上去,我看你也是会测试的,而且这两个项目貌似都是购物类的,你可以尝试一下魔改第二个项目,改成其他类型,比如加一个电商订单导出模块,尝试导出千万级数据,然后再优化它,或者优化它的索引,这样的话两个项目都很好,并且功能上不冲突😎总的来说,这个简历很不错,如果学历好的话,有望冲一下大厂下面是我个人的话,暑假实习已经开始了,有的朋友没有及时找,现在很着急,或者说正在准备今年的秋招,如果你为自己的学历,或者因为没有高含金量的项目而发愁的话,我这里有大厂,最近做过的实习项目是可以包装到简历中的,可以助你找到更好的工作,感兴趣可以看简介中项目地址
点赞 评论 收藏
分享
评论
2
4
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务