首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
haha~~
2017-09-02 17:42
西安电子科技大学 C++
关注
已关注
取消关注
拼多多第一题,按照要求输出了,结果只有40%
题中输出的小熊的饥饿值是按输入小熊的顺序输出的。
不知道C++中怎么做的这一点的。我用的方法只通过40%,应该是运行超时了。。
提示
全部评论
推荐
最新
楼层
笑忘书丶
成都信息工程大学 C++
用sort(begin,end,compare),排序两次。第一次按照战斗力排序,第二次按照编号排序。
点赞
回复
分享
发布于 2017-09-03 09:54
sty0223
中国科学技术大学 C++
话说你sort的写法编译能通过?我也这么写的编译就过不去,只好手撸个冒泡排序。。。
点赞
回复
分享
发布于 2017-09-03 09:49
恭喜您顺利入职
家里蹲 Java
妹子刷题量惊人啊
点赞
回复
分享
发布于 2017-09-02 19:08
相不相信玄学呢
杭州电子科技大学 Java
你是没按要求输出,题目要求按给的熊的顺序而不是排序后的熊的顺序
点赞
回复
分享
发布于 2017-09-02 19:02
寻影657
西南交通大学 Java
用例中提供的数据是排序了的
点赞
回复
分享
发布于 2017-09-02 18:45
ker
西北工业大学 C++
要按照原来输入小熊的顺序 输出相应的饥饿值
点赞
回复
分享
发布于 2017-09-02 18:21
haha~~
楼主
西安电子科技大学 C++
#include<iostream> #include<vector> #include<algorithm> using namespace std; bool cmp(int a, int b) { return a > b; } bool cmp1(vector<int>a, vector<int>b) { return a[0] > b[0]; } int main() { int n, m; while (cin >> n >> m) { vector<int>a(m); //糖的能量值 for (int i = 0; i < m; i++) cin >> a[i]; vector<vector<int>>b(n,vector<int>(2)); //存储小熊的战斗力和饥饿值 for (int i = 0; i < n; i++) { for (int j = 0; j < 2; j++) { cin >> b[i][j]; } } sort(a.begin(), a.end(),cmp); vector<vector<int>>b1(b.begin(), b.end()); sort(b1.begin(), b1.end(), cmp1); vector<int>flag(m, 0); vector<int>res(n,0); //存储小熊剩余饥饿值 for (int i = 0; i < n; i++) { int j = 0; int tmp = b1[i][1]; while (j < m) { if (a[j] <= tmp && !flag[j]) { tmp = tmp - a[j]; flag[j] = 1; } j++; } res[i]=tmp; } for (int i = 0; i < n; i++) //输出 { int t = b[i][0]; for (int j = 0; j < n; j++) { if (b[j][0] == t) { cout << res[j] << endl; break; } } } } } 不知道为什么只通过了40%,思路应该没问题,我觉得应该是超时了。求大神指点。
点赞
回复
分享
发布于 2017-09-02 18:17
海强
电子科技大学 C++
这个是我的代码, 也不知道怎么错. 同求高人指点. #include <iostream> #include <algorithm> #include <set> #include <vector> #include <stack> #include <set> #include <list> #include <bitset> #include <cstring> using namespace std; struct Bear { int fight; int hungry; }; int find_h(vector<Bear>& bears) { int i = 0; int h = -1; int idx = -1; while (i < bears.size()) { if (bears[i].hungry <= 0) { i++; continue; } if (h < bears[i].hungry) { h = bears[i].hungry; idx = i; } i++; } return idx; } void bear_eat(vector<Bear> &bears, int idx, vector<int>& suguars) { for (int i = suguars.size() - 1; i >= 0; i--) { if (suguars[i] == -1) continue; else if( suguars[i] > bears[idx].hungry) continue; else { bears[idx].hungry -= suguars[i]; suguars[i] = -1; break; } } } bool can_eat(vector<Bear> &bears, vector<int> &suguars) { vector<int> hs; for (int i = 0; i < bears.size(); i++) { if (bears[i].hungry > 0) { hs.push_back(bears[i].hungry); } } for (int i = 0; i < suguars.size(); i++) { if (suguars[i] > 0) for (auto& h: hs) if (suguars[i] <= h) return true; } return false; } void hdl(vector<Bear>& bears, vector<int>& suguars) { sort(suguars.begin(), suguars.end()); while (can_eat(bears, suguars)) { int most_h = find_h(bears); if (most_h == -1) break; bear_eat(bears, most_h, suguars); } } int main() { int n, m; cin >> n >> m; vector<int> suguars; for (int i = 0; i < m; i++) { int tmp; cin >> tmp; suguars.push_back(tmp); } vector<Bear> bears; for (int i = 0; i < n; i++) { int f = 0, h = 0; cin >> f >> h; bears.push_back({f, h}); } hdl(bears, suguars); for (int i = 0; i < bears.size() - 1; i++) cout << bears[i].hungry << endl; cout << bears[bears.size() - 1].hungry; return 0; }
点赞
回复
分享
发布于 2017-09-02 18:08
暂无评论,快来抢首评~
相关推荐
10-15 13:29
厦门大学 驱动开发
大疆嵌入式一面面经
自我介绍:1、你的实习经历都是在汽车方向 为啥现在想做这块?2、你对自己的方向有什么倾向(未来想做嵌软的哪部分)3、对我们公司有什么了解,了解那些产品八股:1. C语言实现代码的设计模式是什么?这里回答的不好2. Linux内存子系统了解吗?讲讲3.linux中的线程一般是怎么调度的?4.如果现在是一个单核的CPU,那么多个线程是按什么顺序去运行的?也就是线程的系统调度?5.驱动中poll、中断、异步机制的实现原理,详细讲解poll、select、epoll再内核层面的实现原理6.线程池、进程间通信的一些基础7.了解coredump吗?他的底层实现是什么?8.mmap的原理和实现,四种组成的原...
查看14道真题和解析
点赞
评论
收藏
分享
10-13 10:48
新国都_Java研发工程师(准入职员工)
图拉斯内推,图拉斯内推码
ai面总结:AI调教的很好,问的问题很有意思,整场面试不会有很大的压迫感,追问大多是根据你的回答提问。总时长:35分钟Q1:自我介绍,重点介绍一下个人背景和大学期间的主要经历。Q2:你对于在一家公司长期发展有什么看法?你认为哪几点因素会让你在一家公司长期工作?(有追问)Q3:你取得过的最大成就是什么?过程中最大的难点是什么?你是如何突破的?最终的结果怎么样?(有追问2个)Q4:请描述一个过往遇到的最有压力困难或最具挑战的一个场景,你是如何解决的?对你有什么影响?(有追问)Q5:依你的看法,请描述一个你近期完成的项目任务,如果重来一次,你会做哪些不同的事情来提升结果?(有追问2个)Q6:电商运营...
点赞
评论
收藏
分享
09-29 16:59
已编辑
门头沟学院 Java
大疆
大疆发offer了,嘿嘿😆此等机缘果然不是我等小辈能沾染的
牛客96609213...:
疯狂背刺,之前还明确设置截止日期,还有笔试,现在一帮人卡在复筛,他反而一边开启扩招,还给扩招的免笔试,真服了,你好歹先把复筛中的给处理了再说
投递大疆等公司10个岗位
点赞
评论
收藏
分享
09-05 21:45
蚌埠坦克学院 C++
嘴硬这一块
不到 10K 工资,前景一片大好这一块学习分享日这一块写着上午9:30-下午6:30,说平均干到晚上9点这一块候选人不愿意去就说简历不合适这一块给你赢麻了
用微笑面对困难:
不是你千万别小看这家公司,他们的预估市值成倍上涨,三次在报告看见这个公司了,总之如果是给股权的话可以试试,未来没准真能发家致富哈哈哈哈
点赞
评论
收藏
分享
10-11 16:04
门头沟学院 Java
27届学院本 要不要开启第二段实习?
自从9月份结束实习回到学校,就一直在学校了。现在的学习方向就是 多线程、架构设计、分布式理论方面了,有点纠结的是要不要去再找一段实习?顾虑的点: 1.如果去实习的话,参照上一段实习来看,自己回到宿舍已经是不想学习了,所以没有大块的时间沉淀,对应的就是明年找实习竞争力不够 2.学校也不支持离校,虽然我也敢跟导员爆,但是也要花钱请代课,查寝也不知道怎么搞 3.如果现在不能立刻离校去实习,推到寒假的话,也不知道好不好找,这学期寒假满打满算的话有两个月,但是过年什么的也要刨去一些时间。同时,父母又叫我寒假去学驾照……应该怎么办啊,真的好慌啊?认识一堆27届都是两段实习了
猫猫头猫头鹰:
没用好吧。我直说了。我过来人身份告诉你完全没必要为了实习而实习。
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
面试最后的反问环节,能问些什么?(附特供问题)
3.3W
2
...
BG一般,如何逆天改命拿下后端秋招SSP?
1.4W
3
...
从面试官的角度看待一场面试是怎么样的?
8290
4
...
害,找工作哪有不上当的!
5554
5
...
作为普通家庭出身的我,为什么非大厂不可?
5144
6
...
团、节、东孝子全部启动启动启动!(26届后端秋招总结)
4915
7
...
双非硕的十月份秋招总结
4453
8
...
感觉每个人都有自己的苦恼
4403
9
...
项目经历混乱?STAR法则手把手教你梳理(附真实案例分析过程)
3703
10
...
一眼望到头的生活VS望不到头的生活
3654
创作者周榜
更多
正在热议
更多
#
实习在多还是在精
#
24216次浏览
189人参与
#
你的房租占工资的比例是多少?
#
61354次浏览
742人参与
#
智慧芽求职进展汇总
#
617次浏览
5人参与
#
秋招踩过的“雷”,希望你别再踩
#
57950次浏览
834人参与
#
我的求职进度条
#
38328次浏览
584人参与
#
大厂VS公务员你怎么选
#
13805次浏览
216人参与
#
爱玛科技集团求职进展汇总
#
34649次浏览
231人参与
#
如果不考虑收入,你最想做什么工作?
#
31152次浏览
180人参与
#
柠檬微趣工作体验
#
13244次浏览
72人参与
#
机械人的保底公司是哪一家?
#
40673次浏览
133人参与
#
顺丰求职进展汇总
#
62021次浏览
306人参与
#
华为池子有多大
#
102188次浏览
732人参与
#
当下环境,你会继续卷互联网,还是看其他行业机会
#
135471次浏览
868人参与
#
如果再来一次,你还会学硬件吗
#
137885次浏览
1441人参与
#
如何用一句话描述你的职业
#
24939次浏览
172人参与
#
高学历就一定能找到好工作吗?
#
55537次浏览
607人参与
#
如何排解工作中的焦虑
#
219660次浏览
2104人参与
#
实习下班不想学习,正常吗?
#
13871次浏览
150人参与
#
反问环节如何提问
#
112498次浏览
2350人参与
#
你见过哪些工贼行为
#
11577次浏览
76人参与
#
工作中,努力重要还是选择重要?
#
204534次浏览
2074人参与
#
校招谈薪一定要知道的事
#
9676次浏览
92人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务