研发类笔试记录


前言

向一年-两年之后的研究生找工作开始做好准备

一、2021 大三投的阿里笔试:

一共做过两次笔试:
第一次笔试啥也没做出来。
第二次笔试貌似只做了一题,但没ac。捞起来再面试,八股文+项目,八股文问完之后,由于项目经历无,就gg了,问建议。面试官给的建议是报一个计算机就业培训班。
阿里的要求一般是要求活学活用,要明白为啥用,如何做优化,以及对比其他技术。
悲剧的面试

二、2022.3.13 字节跳动笔试:

投的测试开发,所以有选择题,两道编程题,难度小于纯开发的四道题。等了两天之后显示没过。

1.选择题 + 不定向选择题

考的十分细节,和八股文差不多,没做过项目的基本做不出。
考察的知识点有:

每次使用kill -9强制杀掉之后,mysql都会启动默认的守护进程占用3306这个端口,然而kill -15就很柔和的退出程序

2.编程题

1、字母寻找最大得分问题
小江拿到了一个仅由小写字母组成的字母串,她有一个按钮可以生成字母,按1下得到a,按2下得到b,按3下得到c,以此类推。
小红可以选择字符串的某个字符,通过按按钮生成该字将对应的字母获得得分。每个字符可以获得1分,但每个字符最多选择一次
小红最多可以按k次按钮,她想知道最多可以获得多少分?
输入描述:
第一行输入两个正整数n和k,用空格开,分别代表字符串长度和按按钮的次数。
第二行输入一个长度为n的,仅由小写字母构成的字符串,代表小红拿到的字符串。1 ≤ n,k≤ 2·10⁵

输入
5 11
edcda

输出
3

说明
选择e c a这三个字符。总共按9下按钮即可获得3分。
该选样不是唯一的,但可以证明,无论怎么选择也不可能获得4分,因此输出3。

AC了90%,思路,代码如下:

import java.util.*;

2、简化后就是:从原点跳到k最少要多少次,规定第i次必须跳i步,不能少不能多。(AC:0%)
思路:找规律,首先找到1+2+…+n<k的最大的n,然后对k分奇偶讨论,再对n%4的结果讨论。
洛谷原题:https://www.luogu.com.cn/problem/CF11B

菜,不会。

开发剩下的两道编程题,笔试一共4道编程题的,从牛客上找的:
3、L*L的带值二维网格,从左上角(0,0)出发,找到和恰好为k,且终点落在网格边界的最长路径的长度。
直接从原点开始dfs就过了。(都不带剪枝的)

4、一组糖果,给出所有糖果的价值v和数量c,现在可以对数组v做一次[L,R]的区间翻转,数组c不变,求sum(v[i]*n[i])的最大值(O(n3)40分,O(n2)满分)
首先用二维数组dp[i][j]表示交换i和j后的cost差,也就是d[i][j]=v[i]*c[j]+v[j]*c[i]-v[i]*c[i]-v[j]*c[j]
然后利用中心扩展的思想双重循环搞定。

总结

不断学习,不断加强自己,那些杀不死的终将使得自己更加强大。反思+总结+复盘,冲冲。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值