avatar-decorate
想去三亚看海的小刺猬摆烂了 level
获赞
921
粉丝
82
关注
3
看过 TA
7960
门头沟学院
2024
Java
IP属地:浙江
暂未填写个人简介
私信
关注
头像
2023-09-08 10:57
门头沟学院 Java
deepcat:只代表做完笔试,约不约面是另一回事
投递腾讯音乐娱乐集团等公司10个岗位
0 点赞 评论 收藏
分享
头像
2023-09-03 19:42
门头沟学院 Java
有点简单啊,完了,肯定卡专业了,笔试筛不了人了update笔试结束,更新思路t1 最长不重复 N    此题最大的坑是题目暗含只能是开头那一段,不能是中间的,我一开始也做了个18%,重新审题才发现,思路简单,不放代码了t2 最少操作去重 NlogN    排序,贪心。因为只能增加,不能减少。从第二个位置开始,如果不比前面的元素大,则增加至前面的元素+1def wz2():    n = int(input())    ls = list(map(int, input().split()))    ls.sort()    res = 0    for i in range(1, len(ls)):        if ls[i] <= ls[i - 1]:            res += ls[i - 1] + 1 - ls[i]            ls[i] = ls[i - 1] + 1    print(res)t3 子数组长度为u/v的数量 此题复杂度可为 N,不需要N**2数学思想简化一波:avg(a1,a2,a3) = u/v等价于a1 * v - u    + a2 * v - u + a3 *v - u = 0将原数组进行 元素*v - u 的转换,问题为求子数组和为0 的个数求数组累加和,并记录每个累加和的坐标,如1 2 3 -3的累加和为1 3 6 3累加和统计的坐标为0 [-1]1 [0]3 [1,3]6 [2]两个坐标累加和相同,则说明其中间的数组和为0,即是答案所以从 累加和list的长度中选取对应的两个坐标(即排列组合Cn 2),求得答案超字数了,代码贴评论区
想去三亚看海的小刺猬摆烂了:def wz3(): n, u, v = list(map(int, input().split())) ls = list(map(int, input().split())) ls = [v * i - u for i in ls] cnt = defaultdict(list) cur = 0 cnt[0].append(-1) for i, n in enumerate(ls): cur += n cnt[cur].append(i) res = 0 for i, c in cnt.items(): res += c * (c-1) // 2 print(res)
投递微众银行等公司10个岗位
0 点赞 评论 收藏
分享
头像
2023-09-02 16:48
门头沟学院 Java
选择题难度不大,虽然该不会的就是不会结束后放代码和题解t1 依次遍历每一项的距离,维护一个最小距离和结果,如果小于当前则更新,等于则取平均数    83%的情况,有可能是最后四舍五入的问题?我刚开始好像也遇到了这个问题,但是是elif里面写了个bug,并且需要注意需要将整数转正float类型freq = int(input())split = input().strip().split(',')mx = 10**9res = 0for s in split:    f, l = list(map(float, s.split(':')))    if abs(freq - f) < mx:        mx = abs(freq - f)        res = l    elif abs(freq - f) == mx:        res = (res + l) / 2print(round(res, 1))t2 将任务按 执行结束后的剩余电量、起始电量 进行排序,然后计算    MX = 4800    task = []    least = 0    for s in input().strip().split(','):        task.append(list(map(int, s.split(':'))))        least += task[-1][0]    task.sort(key=lambda x:(-max(x[1] - x[0], 0), x[1]))    now = res = least    for cost, start in task:        d = max(cost, start) - now        if d > 0:            res += d            now += d        now -= cost    print(res if res <= MX else -1)
0offer选手到此一游:我第二题通过率83%,不知道哪里错了
投递小米集团等公司10个岗位
0 点赞 评论 收藏
分享
头像
2023-09-02 15:10
门头沟学院 Java
主要是C++选择题的难度啊,很多都不懂,编程题两道不难Java陪跑了代码思路的话考试结束后再放16:00 updatet1 python yyds,直接将16进制改成10进制,然后再转8进制统计t2 考虑两种情况,一种是在索引0的位置进行反转,一种不反转0位置,然后比较两者的操作数量,取较小值。    操作数量的计算方式是,从索引1的位置开始从左到右逐位 考虑是否反转,若前面的数字为0,则不能操作当前位置,否则前面的就变1了,若前面的为1,则必须操作当前位置,最后直到最后一位,进行末位特判。t2 忘了保存了t1 代码res = 0base = 0for c in s[::-1]:    if c.isdigit():        res += int(c) * (16**base)    else:        res += (ord(c) - ord('A') + 10) * (16**base)    base += 1cnt = [0] * 8while res:    cnt[res % 8] += 1    res = res // 8mx = max(cnt)for i in range(8):    if cnt[i] == mx:        print(i, end = ' ')
投递富途等公司10个岗位
0 点赞 评论 收藏
分享
头像
2023-08-28 12:22
门头沟学院 Java
想去三亚看海的小刺猬摆烂了:哦吼,编辑一下之后,牛客投票结果直接清零了,原本的比例大约是白菜 35%,SP+9 40%,其余25%。+9多的有点离谱
投递TP-LINK等公司10个岗位 晒一晒我的offer
0 点赞 评论 收藏
分享
头像
2023-08-25 17:50
门头沟学院 Java
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客企业服务