OPPO提前批笔试——底层软件工程师

选择题

一共20个选择题

linux+算法+操作系统+网络+数据库+数据结构

编程题

1.求数组和

一个数组,进行q次操作,每次操作修改一个元组,最后求修改后的所有元素之和。

第一行:n,q

第二行:n个正整数

接下来q行:每行输入两个正整数i,x,代表第i个元素修改为x。

input:

5 3

1 2 3 4 5

2 3

3 3

5 1

output:

16

16

12

思路:先把数组求和得到sum,再求每次修改的值与之前的差值,加到sum上。

输出q行,每行一个正整数,代表当前数组元素之和

后台只过了80%,笔试结束后问了大佬要用long long 型

2.最小面积

给定一个矩形和一个定点p,以p为圆心画圆覆盖矩形,求圆面积最小值,pi=3.1415926536

第一行:x1,y1,x2,y2代表矩形左下角和右上角坐标

第二行:xp,yp代表点p的坐标

input:

0 0 1 1

0 0

output:

6.2831853(误差不超过10^{-4}即可)

思路:求点p到矩形四个点的距离然后求最大值,即是半径,求面积

输出:一个浮点数

后台:100%

3.求连续子数组最短长度

连续子数组,满足该连续子数组的所有元素乘积的2进制末尾至少有k个0的连续子数组的最短长度

第一行:两个正整数n,k

第二行:n个正整数ai

intput:

6 3

1 2 3 4 5 6

output:

3

思路:二进制末尾至少有k个0表示乘积和sum%(pow(2,k))==0,然后使用滑动窗口

输出:一个整数代表最短长度,不存在输出-1

后台只过了15%,笔试结束咨询大佬,说也是int类型的问题,改成long long,但是这个确实没试不知道还有没有其他问题

做一个简单的记录,关于思路问题,或者有没有哪些平台能让我重新做一下这些题,求大佬指点指点!!!

总结:选择题都是基础知识,编程总体来说比较简单,不像华子的那种难度,但是就是考虑不周全,还是基础不牢。

#OPPO信息集散地##oppo#

本专栏主要是记录24届秋招过程中我的笔试以及面试过程,一方面是为了给自己作为一个记录总结学习,作为面试复盘的一个记录 ,另外一方面作为一个分享,让大家能够少走弯路,针对性复习。 后面会持续更新!!!有需要的可以持续跟进

全部评论
第三题在每次输入的时候直接计算输入的数是2的几次方的倍数并记录(用while (inputnum%2==0) counts++;来做),判断的时候就将积条件变成和条件,减少运算量,也不用long long了
3 回复 分享
发布于 2023-07-11 09:39 江苏
你做的和我是一套卷子,题目一样
2 回复 分享
发布于 2023-07-08 19:26 江苏
不太理解3怎么用滑动窗口,左边界啥时候收缩
点赞 回复 分享
发布于 2023-07-08 15:02 河北
原来用long long就可以过。我跟你一套卷,兄弟
点赞 回复 分享
发布于 2023-07-10 13:24 广东
我今天才收到笔试通知😂
点赞 回复 分享
发布于 2023-07-15 08:51 宁夏
请问大佬有已经一面了吗
点赞 回复 分享
发布于 2023-07-21 14:50 重庆
bro 你显示的是C卷吗?
点赞 回复 分享
发布于 2023-07-21 22:51 安徽
第三题一样,但是我用了long long也只是多了5%,也就是20%,依旧没办法全部通过,似乎是超时了。(可能是我没有用滑动窗口?)
点赞 回复 分享
发布于 03-09 21:31 广东

相关推荐

美的 电控软件开发 31.8w
牛客676390888号:就行业来说,感觉新能源比亚迪这边会好点,美的家电感觉技术成长也不太大
点赞 评论 收藏
分享
12 78 评论
分享
牛客网
牛客企业服务