中国银行编程评测

11.17
第二批中国银行编程评测,一共5道编程题,2小时时间。前3道比较简单,后面两道有点绕,不过我全ac了。

 我有印象的几道题:

😺给定n(1<=n<=1e9),问是否存在一对(x,y),满足(x^y)*y + (y^x)*x=n,1<=x,y<=1e9。

解答:让x=1,那么(x^y)*y + (y^x)*x=2y,即n为偶数时有解(1,n/2);而x和y取任意数,这个式子都是偶数,所以直接判断n是否为偶数就行了。

return (n&1) ? "No" : "Yes";

😺给定一个数组a, 长度为n,数组中每个元素范围是[0,n]。定义“好数对(i,j)”为:i*2<=j 且 i!=j 且 a[i] xor a[j]==0。求好数对的数量:

解答:a[i] xor a[j]==0 等价于a[i]==a[j]。从头往后枚举j,维护前j/2个元素各出现了几次即可,复杂度O(n)

😺给定两个排列a和b,长度为n(1<=n<=1e5)。可以交换a中相邻的两个元素。交换后,要让 sum abs(a[i]-b[i])最大,问最少交换几次。

解答:当n为偶数时,sum abs(a[i]-b[i])最大的情况,就是a里面1~n/2的所有元素都对应着b里面n/2+1~n的所有元素。所以让a数组里面<=n/2的给个0标签,>n/2的给个1标签,b数组同理,只需要让a交换后和b的标签对应就好了。计算要交换多少次,只需要计算a中0标签与b中0标签的各个距离之和即可,可以O(n)实现。

当n为奇数时,有个复杂的地方是,元素(n+1)/2既可以给0标签,也可以给1标签。因此就这两种情况都计算一下,取一个交换次数最小值即可。复杂度O(n).

#中国银行测评#
全部评论

相关推荐

本人 bg 双九,Java 后端选手,算法背景。计划在一线城市卷几年,base江浙沪最佳(很多homie都在杭州),比较看重薪资和未来晋升、跳槽这两点。目前有几个意向,请各位前辈和大佬给些建议(当然越具体越好),非常感谢!1. 小红书-电商 toC,杭州(大sp)优点:薪资开的很高,有不少 toC 的业务场景,也有 AI Agent 的项目,base 地很满意,薪资后续还可以 argue,诚意拉满缺点:平均司龄较短,电商业务可能比不上头部厂,未来跳槽可能是个问题 (?),强度较大,10-11-52. 字节-火山基础架构-混合云 toB,杭州(未开奖)优点:部门氛围不错,弹性上班,目前主要做AI大模型的云原生项目,不打卡,主要做 vllm PD分离、Agent开发、K8S容器编排的工作,业务据说挺赚钱缺点:技术栈和传统后端有所区别,入职landing难度可能比较大,未来跳槽可能只能在在云厂商之间跳了,不知道开奖薪资能不能跟上小红书3. 腾讯-CSIG腾讯云-CDN加速平台 toB,深圳(未开奖)优点:腾讯平台很大,福利较多,部门应该不是很卷,适合养老,10-8-5缺点:虽然最后发offer了,但面试体验一般,感觉面试官不是很想要人(压力面?)。业务可能较边缘 (?),薪资估计比不过字节,同字节一样,跳槽可能也是在云厂商之间跳了,同时base在深圳4. 美团-外卖技术部 toB,北京(未开奖,实习转正,估计能开 大sp 以上)优点:做一些对企业的外卖到店业务,mt、ld都很好,秋招期间多次保温,团队不卷,基本8点下班,整体10-9-5缺点:只有北京的岗位,公司福利较少,北京的同学太少了,寂寞啊5. 拼多多-temu-跨境合规 toB,上海 (未开奖)优点:给的钱估计很多,大锅饭,有普调,能坚持干下去的话稳稳赚钱缺点:业务不清楚具体做啥,工作时长较长,单休,11-11-6,上海整体性价比不如杭州6. 快手-智能直播电商 AI 项目开发 toC/B,杭州(未开奖)优点:业务和小红书类似,有些 toC 场景,也有 AI agent 项目,base 地在杭州,无打卡,强度小于小红书缺点:泡了快2个月了,还没泡出来,开得薪资估计没有小红书高7. 虾皮-外站广告业务 toC,深圳(未开奖)优点:广告业务或许好一点,做算法工程,强度未知缺点:base地在深圳,薪资未知,平台不如 bat快手、虾皮不知道要泡多久,目前主要纠结的点是 xhs 和 字节,xhs 今年开的薪资太高了,字节和xhs该怎么考虑呢?
投递快手等公司10个岗位
点赞 评论 收藏
分享
评论
1
2
分享

创作者周榜

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