阿里笔试

如题#阿里巴巴##笔试题目#
全部评论
第一题我也0了,最后的时候想了一下是不是可能是因为判题数据的到达时间不是升序?
1 回复 分享
发布于 2021-04-09 20:04
第一题一开始图方便,用个sort排序不出来,然后用priority_queue还是出不来,阿里的题看起来思路不难,每次写出0来,求朋友们解答。
1 回复 分享
发布于 2021-04-09 20:06
大佬们第一题就是0,求个题解,我很纳闷
点赞 回复 分享
发布于 2021-04-09 19:59
第二题超时,只会用笨方法每次直接交换,哪个大佬能告知下思路ww,或者贴个java的解法,谢谢了
点赞 回复 分享
发布于 2021-04-09 20:03
优先队列保存序号,然后模拟也是0
点赞 回复 分享
发布于 2021-04-09 20:10
第一题过的老哥,发份pasteubuntu的代码链接吧
点赞 回复 分享
发布于 2021-04-09 20:13
#include<iostream> #include<vector> #include<algorithm> #include<queue> using namespace std; struct time { int start; int end; int num; }; struct cmp{  bool operator()(const time a,const time b){ if (a.start == b.start)return a.num > b.num; return a.start > b.start; } }; int main() { int t; cin >> t; while (t--) { int n; cin >> n; priority_queue<time, vector<time>, cmp> q; for (int i = 0; i < n; i++) {                        time temp; cin >> temp.start >> temp.end; temp.num = i; q.push(num1[i]); } vector<int> list(n, 0); time temp = q.top(); q.pop(); list[temp.num] = temp.start; int pre = temp.start + 1; for (int i = 1; i < n; i++) { time temp = q.top(); q.pop(); if (pre >= temp.end)continue; list[temp.num] = max(temp.start, pre); pre = max(temp.start, pre) + 1; } for (int i = 0; i < n; i++) { cout << list[i] << " "; } cout << endl; } return 0; } 有没有朋友看看代码存在的问题
点赞 回复 分享
发布于 2021-04-09 20:13
第一题0%,原因竟然是输出不是按照学生序号输出的,而是按照学生排队的顺序😓
点赞 回复 分享
发布于 2021-04-09 20:20
阿里卡笔试吗,佬们
点赞 回复 分享
发布于 2021-04-09 20:41

相关推荐

10-28 14:42
门头沟学院 Java
watermelon1124:因为嵌入式炸了
点赞 评论 收藏
分享
一个菜鸡罢了:哥们,感觉你的简历还是有点问题的,我提几点建议,看看能不能提供一点帮助 1. ”新余学院“别加粗,课程不清楚是否有必要写,感觉版面不如拿来写一下做过的事情,教育经历是你的弱势就尽量少写 2. “干部及社团经历”和“自我评价”删掉 3. 论文后面的“录用”和“小修”啥的都删掉,默认全录用,问了再说,反正小修毕业前肯定能发出来 4. 工作经验和研究成果没有体现你的个人贡献,着重包装一下个人贡献
点赞 评论 收藏
分享
1 2 评论
分享
牛客网
牛客企业服务