首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
来个offer吧ball
美团_广告引擎业务架构_后台开发
发布于陕西
关注
已关注
取消关注
@冲锋陷阵懒羊羊:
宁德时代 笔试(软开)
只有三道编程题1.给一个数,如果为偶数可将该数除2,奇数可将该数加1或者减1,问将该数变为1需要多少步递归+记忆化搜索 95% 不想改了#include <bits/stdc++.h>using namespace std;unordered_map<int ,int> umap;int process(int num){ if(num==1)return 0; if(num%2==0){ if(umap.count(num/2))return 1+umap[num/2]; int cur = process(num/2); umap[num/2] = cur; return 1+cur; } else{ int l , r; if(umap.count(num-1))l = umap[num-1]; else{ l = process(num-1); umap[num-1] = l; } if(umap.count(num+1))r = umap[num+1]; else{ r = process(num+1); umap[num+1] = r; } return 1+min(l , r); } }int main(){ long cur = 0; cin>>cur; umap[1] = 0; if(cur%2==0)cout<<1+process(cur/2); else cout<<1+min(process(cur-1) , process(cur+1)); return 0;}2.给一组数,判断最长几乎有序子序列长度(子序列元素位置不需要连续,即可以删除某些元素);几乎有序(不能出现三个连续的数x,y,z使得x>=y>=z)类似单调栈的处理,不过给几乎有序加了一个判断 100%#include <bits/stdc++.h>using namespace std;int process(vector<int> &vec , int l , int r){ vector<int> dec(r-l+1); dec[0] = 0; for(int i = 1; i<r-l+1 ; i++){ if(vec[i+l]<=vec[l+i-1])dec[i] = 1+dec[i-1]; else dec[i] = 0; } stack<int> stk; stk.push(vec[l]); int res = 1; bool flg = false; for(int i = 1 ; i<r-l+1 ; i++){ int cur = vec[i+l]; if(cur<stk.top()){ if(!flg){ stk.push(cur); flg = true; } else{ stk.pop(); stk.push(cur); } } else if(cur==stk.top()){ if(!flg){ stk.push(cur); flg = true; } } else { stk.push(cur); flg = false; } res = max(res , (int)stk.size()); } return res;}int main(){ int n , q; cin>>n>>q; vector<int> vec(n); for(int i = 0 ; i < n ; i++){ cin>>vec[i]; } int l , r; vector<int> res(q); for(int i = 0 ; i<q ; i++){ cin>>l>>r; --l; --r; res[i] = process(vec , l , r); } for(int i = 0 ; i<q ; i++){ cout<<res[i]<<endl; } return 0;} 3.给一个0/1矩阵,判断面积最大的矩形的位置,输出上边界行数,下边界行数,左边界列数,右边界列数两个前缀和数组(行、列)一次枚举进行判断 0% 编译没过 (估计是输入不对 本地IDE样例按字符串输入没问题 每次都不给说怎么输入的 服了)#include <bits/stdc++.h>using namespace std;int main(){ ios::sync_with_stdio(false); cin.tie(0); string str; getline(cin , str); vector<vector<int>> vec; vector<int> help; for(int i = 0 ; i<str.length() ; i++){ int cur = str[i]; if(cur=='0'){ help.emplace_back(0); } if(cur=='1'){ help.emplace_back(1); } if(cur==']'&&str[i-1]!=']'){ vec.emplace_back(help); help.clear(); } } int n = vec.size() , m = vec[0].size(); vector<vector<int>> row(n , vector<int>(m)); for(int i = 0 ; i<n ; i++){ if(vec[i][0])row[i][0] = 1; else row[i][0] = 0; } for(int i = 0 ; i<n ; i++){ for(int j = 1 ; j<m ; j++){ if(vec[i][j])row[i][j] = row[i][j-1]+1; else row[i][j] = 0; } } vector<vector<int>> col(n , vector<int>(m)); for(int i = 0 ; i<m ; i++){ if(vec[0][i])col[0][i] = 1; else col[0][i] = 0; } for(int j = 0 ; j<m ; j++){ for(int i = 1 ; i<n ; i++){ if(vec[i][j])col[i][j] = col[i-1][j]+1; else col[i][j] = 0; } } int data = 0; vector<int> res(4); for(int i = 0 ; i<n ; i++){ for(int l = 0 ; l<m ; l++){ if(row[i][l]==0)continue; int cur = col[i][l]; for(int r = l ; r<m ; r++){ if(row[i][r]==0)break; cur = min(cur , col[i][r]); data = max(data , cur*(r-l+1)); if(data==cur*(r-l+1)){ res[0] = i-cur+1; res[1] = i; res[2] = l; res[3] = r; } } } } string s = "["; for(int i = 0 ; i<4 ; i++){ s += to_string(res[i]); s += ','; } s.pop_back(); s += ']'; cout<<s; return 0;}
点赞 6
评论 6
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
03-31 21:46
美团_测试开发
面试不会?学会引导面试官提问
下面给大家介绍几个面试常用的小技巧。1.转移火力:遇到不会的问题尝试转移一下方向,往会的方向去转移。举个例子:在测试的面试过程中可能会问你接口自动化,但是你可能还没学你目前只学了UI自动化,那么你面试的过程就可以说接口自动化还没学,但是我对UI自动化比较熟悉。2.表现求知欲:遇到不会的问题可以尝试反问一下,表现的你很想要知道答案,因为面试官在筛选候选人,候选人的求知欲以及发现问题的能力也很重要,技术可以学,态度不好改。3.深耕一个点:很多同学都会遇到一种情况那就是我面试都回答出来了,算法也写出来了但是为什么挂了,原因就是你可能每个问题都回答的平平无奇,没有一个两点能抓住面试官 。举个例子:面试...
查看3道真题和解析
点赞
评论
收藏
分享
03-30 18:40
中国传媒大学 数据分析师
Vibe Coding 会干掉初级岗位吗
最近Vibe Coding爆火,不少初级开发者开始焦虑:这种能通过自然语言直接生成代码的AI驱动开发方式,会不会让自己的岗位彻底消失?答案并非绝对,它不是“消灭”初级岗位,而是对岗位需求进行筛选和升级。Vibe Coding由Andrej Karpathy提出,核心是开发者用自然语言描述需求,AI自动生成代码,开发者只需负责引导、测试和优化,大幅降低了编程门槛。它确实会冲击基础重复性岗位,比如单纯写CRUD代码、简单脚本开发的初级岗,这类工作可被AI快速替代,未来需求会明显萎缩。但它并非要干掉所有初级岗位。研究显示,AI生成的代码常存在安全漏洞,且无法独立完成复杂系统设计和业务适配。企业真正需...
点赞
评论
收藏
分享
03-12 15:40
门头沟学院 运营
刚加上这个hr,结果是个广子,发完第一句话就被封号了微信
站队站对牛:
都是疯狂搞玩笑的
点赞
评论
收藏
分享
03-26 20:45
广州大学 前端工程师
双非前端某小厂上古八股狂飙28题
一分钟能问两个题,八股狂轰滥炸,加粗是没答上来的自我介绍,优势介绍实习项目、底层框架JS 和 TS 区别JS 基本数据类型有哪些如何判断一个值是什么类型箭头函数的特点new 运算符干了什么闭包作用域作用域链(这个不知道,但是作为替代被要求说了原型链)事件循环机制(说了微任务宏任务)微任务宏任务区别用过的 React hook(state ref effect)React 不同组件怎么通信(状态提级声明并透传/外部状态管理器)组件中 data 为什么是一个函数(这是啥玩意啊事后我搜也搜不到啊)用没用过 Vue(说简历是 Vue 写的,那算了不问了)介绍节流和防抖的区别使用节流和防抖要注意什么(没...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
Vibe Coding开发前的 7 个关键步骤
5120
2
...
我放弃互联网大厂了。。
3546
3
...
字节实习一、二、三、HR面面经
3041
4
...
京东零售平台产品与研发中心一面
2633
5
...
双非前端字节一面面经(难度 plus ultra 版)
2512
6
...
美团后端暑期实习一面
1972
7
...
美团暑期二面
1935
8
...
如何把面试主动权握在手里?Ai岗面试焚诀!
1935
9
...
腾讯前端暑期实习一面
1935
10
...
我招了!当年就是被招行这么招进去的
1872
创作者周榜
更多
正在热议
更多
#
你觉得大几开始实习最合适?
#
11593次浏览
114人参与
#
你都用vibe coding做过什么?
#
5690次浏览
214人参与
#
开放七大实习专项,百度暑期实习值得冲吗
#
30697次浏览
586人参与
#
面试被问到不会的问题,你怎么应对?
#
9854次浏览
84人参与
#
你现在一天AI几次?
#
4421次浏览
67人参与
#
你见过哪些招聘隐形歧视?
#
8376次浏览
75人参与
#
厦门银行科技岗值不值得投
#
13015次浏览
308人参与
#
Vibe Coding 会干掉初级岗位吗?
#
9830次浏览
140人参与
#
做完笔试后你收到面试了吗?
#
10403次浏览
96人参与
#
AI Coding实战技巧
#
3312次浏览
90人参与
#
如果人生可以debug你会改哪一行?
#
4331次浏览
84人参与
#
大厂实习和小厂实习最大的区别是什么?
#
19834次浏览
150人参与
#
牛友の3月总结
#
14356次浏览
133人参与
#
秋招OC许愿
#
424999次浏览
2705人参与
#
面试中,你被问过哪些奇葩问题?
#
91711次浏览
856人参与
#
uu们,春招你还来吗?
#
51658次浏览
252人参与
#
节后第一天上班,我的精神状态
#
19920次浏览
139人参与
#
面试吐槽bot
#
182658次浏览
870人参与
#
___岗狗都不干,我干!
#
78242次浏览
312人参与
#
降低公积金和取消房补怎么选
#
29621次浏览
90人参与
#
七猫笔试
#
6021次浏览
39人参与
#
Claude Code泄露源码
#
3401次浏览
51人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务