知能科技笔试+一面面经
笔试
第一个是问 f(int a), f(int &a), f(const int &a) 三种传参方式的区别,和在什么情况下会用那种传递,随便答了值传递和引用传递的区别,还有传变量还是传常量,不知道对不对
第二个是给一个类,有构造函数和析构函数,然后输出结果,随便猜了猜结果,感觉是错的
第三题是一个cf原题,构造一个长度为n的数组,使得连续连续字段和为正数的连续子段个数为k,随便构造一下就行,比较简单
第四题是给一个棋盘,每个棋盘有一个值,让你在棋盘任意一个位置放一个国际象棋里的象,然后求最大收益,这个随便写一写就行
之后是附加题
第一题是给300个点和一个圆,然后求最少的点的使得这些点构成的凸包覆盖了整个圆,这个题稍微想了一会,大概就是先极角排序,然后枚举点连边,如果边没有过圆,然后根据两点和圆心的位置关系连有向边,最后求一个最小环即可,这个用floyd即可,后来大佬教了教更好的方法,dp[i][j]表示第i个点到第j个点构成的不与圆交的凸壳的最小点数,然后单调队列优化转移即可
第二个是问一个序列长度为k的连续子段的中位数最大值,不知道是不是我都错题了,我看网上有大佬的题目是长度不小于k,我当时做法就是splay,每次找中位数旋到根,然后插入,删除即可,事实上权值线段树上二分或者离散化后线段树上二分也能做,对于不小于k的情况,二分+前缀和+维护最小值就可以了,长度为k的是个原题,高中的时候做过,长度不小于k是个cf原题
面试
先自我介绍,然后展示了一下笔试第一个算法题的做法。之后就是八股,比如c++ stl里有哪些容器,这个比较简单,
然后是有哪些智能指针,什么时候要用智能指针,回答的不能说不对,只能说不太对
然后就问了我有没有c++项目,(又被拷打了没有项目了),讲了一下数学建模比赛里做的一个蒙特卡洛法求反射率的,这个项目啥东西也没有,就是写了个三维的计算几何然后码量稍微大。(多次面试被拷打没有项目,感觉很寄)
然后问有没有多线程,网络编程经验,然后讲了讲昨天刚做的信息论实验在服务端和客户端之间传图片,多线程就是不会
还问了linux,linus唯一学的是上周学的shell,结果也不会
接着问了问如果让摄像头跟踪一个目标,看看我有什么想法,乱讲了一通,因为根本不会
最后反问公司做啥,还问了问面试官为啥不去大厂就业而是选择创业
估计是凉了,非科班+没项目完全没有竞争力
#我的实习求职记录##转码#