广联达 8.31笔试 10.15面试 11.2hr面
//1. accelerated atomic //time complexity O(n) //space complexity O(n) int solution(vector<int>& emit, vector<int>& receive){ int n=emit.size(); //flags[i] = 1 means that the atomic i is accelerated vector<uint8_t> flags(n+1,0); int i=0,j=0; int accelerated=0; while(j<n){ if(flags[emit[i]]){ ++i; } else if(emit[i]==receive[j]){ ++i; ++j; } else{ flags[receive[j]]=1; ++accelerated; ++j; } } return accelerated; } //2.maximum passenegers //time complexity O(nlogn) //space complexity O(logn)//quick sort int solution(vector<vector<int>> & intervals){ sort(intervals.begin(), intervals.end()); int end=intervals[0][0]+intervals[0][2]-1;//the maximum indexed seat where people can sit int result=intervals[0][2]; int n=intervals.size(); for(int i=1;i<n;i++){ auto & temp=intervals[i];//current intervals {l,r,x} //1.left_next > end if(temp[0]>end){ //let people sit on the space between intervals result+=(temp[0]>intervals[i-1][1])?(temp[0]-intervals[i-1][1]-1):0; result+=temp[2]; end=temp[0]+temp[2]-1; } //if left_next <=end else{ int end_next=max(min(temp[1],end+temp[2]),end); result+=end_next-end; end=end_next; } } return result; }
笔试的时候都没有ac 回过头来想了想写出来。。。。 就当留个纪念, 还请大佬们指点
10.11 时隔一个多月 收到了面试通知,一眼kpi
10.15 一面
自我介绍
为什么有设计模式
设计模式的原则
面向对象是什么
我们怎么为程序进行架构设计
了解多线程编程吗?讲一下多线程编程的注意事项
为什么多线程要比单线程好,要求举例子细说
线程见同步的机制
mysql的事务,以及实现原理
自己的兴趣爱好
自己的缺点是什么
读过什么书吗
什么事uml(我只知道uml类图)
了解过qt吗(没了解过。。。)
反问:
1,培训体系
2,主要语言
笔试没答好,大概率kpi
hr面常规问题
11.4 收到offer邮件 白菜。
#广联达##笔试##笔试挂了#