首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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
暂无评论,快来抢首评~
相关推荐
05-24 22:42
山东大学 嵌入式软件工程师
“应该没问题”就是在给自己挖坑
开会的时候,你负责的一个数据还没有完全获取到,这时候有人问了一句:“这个确认稳定吗?”你不想把场面弄得太紧张,于是随口回答:“应该没问题。”当时觉得,自己在前面加上了“应该”两个字,属于给自己留了余地了,真聪明但实际上不是这样,别人记住的,以及留在会议纪要材料里的,应该不是“应该”,而是“没问题”等后面数据跑出来,或者项目真的出了问题了,会议纪要里的这句话就会被标黄截图发出来“你当时不是说没问题吗?”本来是不确定的,反而成了一句承诺那,这题怎么解?假如领导在场,不管这个问题是不是他提的,既然被人抛出来,就不能不接不能说“没有把握”,也不能直接说死“能”或者“不能”可以先给一个基准时间,比如:“...
SAGIMA牛马咖啡
点赞
评论
收藏
分享
04-04 11:52
已编辑
北京邮电大学 Java
27后端简历求锐评
最近才准备开始投,没实习,八股只看了一点点形势有点严峻😇
你的简历改到第几版了
点赞
评论
收藏
分享
05-07 15:46
苏州大学 嵌入式软件开发
专本硕 嵌入式软件 还有救吗
这简历, 还有控件优化吗, 感觉学了点什么,有感觉啥也不会啊。现在开始投递,还能找到实习吗有没有经验传授,或者推荐的,懂感恩~
点赞
评论
收藏
分享
昨天 13:52
上海大学 算法工程师
黑马点评-消息队列相关
Q:好的我现在明白不是返回数据格式的问题,但我还是很模糊,你给我再讲一下后端返回给前端数据的一般过程,和用消息队列后的返回过程A:tomcat线程先释放 (本来controller调service service调mapper查询数据库,一整套流程走完返回VO实体类给前端,有了消息队列后,controller接收到请求,查redis,判断下单成功直接给前端返回数据,然后释放tmocat线程,后台启动一个静默线程执行订单insert数据库等操作,,,并在 一段时间后再次给前端返回数据)我给你画最清晰、最朴素、最真实的前后端交互流程你马上彻底不模糊!我只讲最本质的区别:先记住一句超级本质的话后端给...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
父母还是太爱我们
1.7W
2
...
10年代码经验,分享我常用的AI工具
1.3W
3
...
大厂嘉豪图鉴
3399
4
...
发个牢骚
3033
5
...
一名本科生的独白,焦虑,迷茫,疑惑
2874
6
...
大厂工贼 - 恐怖如斯
2691
7
...
论期末周如何跟mentor请假(奴才版)
2370
8
...
我爸希望我考公,但是我签了字节
2350
9
...
暗恋了三年的人要去鹅了!
2113
10
...
Ai Agent、ai应用开发面经面试题2
1992
创作者周榜
更多
正在热议
更多
#
实习生的蛐蛐区
#
991504次浏览
4989人参与
#
秋招投递攻略
#
295254次浏览
2632人参与
#
27届实习投递记录
#
159749次浏览
1628人参与
#
拿到offer之后,可以做些什么
#
121612次浏览
574人参与
#
你觉得mentor喜欢什么样的实习生
#
63674次浏览
1076人参与
#
你的mentor是什么样的人?
#
66431次浏览
838人参与
#
AI了,我在打一种很新的工
#
203206次浏览
1931人参与
#
为了求职,我做过的疯狂伪装
#
90711次浏览
792人参与
#
我和mentor的爱恨情仇
#
121170次浏览
1034人参与
#
从mentor身上学到了__
#
67321次浏览
936人参与
#
找实习记录
#
281709次浏览
1660人参与
#
万物皆可发面经
#
3063次浏览
37人参与
#
父母对你找工作是助力还是阻力?
#
51536次浏览
453人参与
#
第一次找实习,我建议__
#
89592次浏览
908人参与
#
实习,不懂就问
#
226985次浏览
1744人参与
#
为了入行xx岗,我学了__
#
51179次浏览
410人参与
#
你知道哪些职场黑话?
#
93239次浏览
484人参与
#
硬件/芯片公司工作体验
#
182355次浏览
1036人参与
#
多益网络工作体验
#
75198次浏览
318人参与
#
你上一次给父母打电话是什么时候
#
46540次浏览
287人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务