想问问昨天的贝壳研发笔试题

第三题和第四题具体思路有大佬讲讲吗?为什么第三题是要排序然后比较,看了大佬们的代码我不是很懂😂#贝壳找房##笔试题目#
全部评论
int Count(vector<int> &v) {     std::sort(v.begin(),v.end());     int sum = 0;     for (int i = 0; i < v.size(); i++) {         int num = floor(v[i] / 0.9);         sum += upper_bound(v.begin()+i,v.end(),num)-v.begin()-i-1;     }     return sum; }
点赞 回复 分享
发布于 2019-08-11 18:46
我的第三题是动态规划,是不是每个人都不一样
点赞 回复 分享
发布于 2019-08-11 16:07
排序,遍历,更好的遍历就是二分查找,不过我从头遍历过了就没管了
点赞 回复 分享
发布于 2019-08-11 10:55
c++ 时间限制1000ms,不仅要先排序,对于查找最大的限制边界值,要采用二分查找,nlogn+nlogn。。。不用二分查找是 nlogn+n^2,反正我超时了
点赞 回复 分享
发布于 2019-08-11 10:51
楼上正解,先排序,不然超时
点赞 回复 分享
发布于 2019-08-11 10:41
排序解决了x > y的条件,然后循环遍历,去判断 y > x * 0.9,找到第一个满足的,内循环就可以直接break了。因为排序后是数组递增的。我一开始没排序直接写超时。
点赞 回复 分享
发布于 2019-08-11 10:39
据说四道才给过 凉了
点赞 回复 分享
发布于 2019-08-11 10:23
点赞 回复 分享
发布于 2019-08-11 10:11
哎,为啥第三题代码几乎一样,就是过不了,还用了二分查找
点赞 回复 分享
发布于 2019-08-11 10:08

相关推荐

ResourceUtilization:你是我见过最美的牛客女孩
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务