题目描述

春节期间小明使用微信收到很多个红包,非常开心。在查看领取红包记录时发现,某个红包金额出现的次数超过了红包总数的一半。请帮小明找到该红包金额。写出具体算法思路和代码实现,要求算法尽可能高效。
给定一个红包的金额数组gifts及它的大小n,请返回所求红包的金额。
若没有金额超过总数的一半,返回0。
测试样例:

[1,2,3,2,2],5

返回: 2

思路:将出现的金额和对应的数量都放到一个二维的vector里去,其实复杂度肯定可以优化,二刷时再搞,再将出现次数最多的与总数的一半比较,就可以得到结果了~

代码:

class Gift {
public:int getValue(vector<int> gifts, int n) {// write code herevector<vector<int> >res{ {0,0} };int max=n/2;//总数的一半int output=0;int flag = 0;//res中是否有这个金额的标志for (int i = 0; i<n; ++i){int size = res.size();for (int j = 0; j < size; ++j){if (res[j][0] == gifts[j]){//如果二维数组中已经有这个金额,这个金额对应的数量加1res[j][1] += 1;flag = 1;//标志位置为1,并跳出内循环break;}}if (flag == 0){//如果标志位为0,则将这个金额放入到res中,数量为1res.push_back({ gifts[i], 1 });}}int size_res = res.size();for (int i = 0; i < size_res; ++i){if (res[i][1]>max){//如果当前的金额数量大于总数的一半output = res[i][0];//输出就为当前的金额,并跳出循环break;}}return output;}
};

输出结果: 运行时间: 7 ms 占用内存:496K 状态:答案正确

2016校招真题编程练习——微信红包(腾讯)相关推荐

  1. 2019校招真题编程(十九)魔法深渊

    魔法深渊 题目描述 我的思路 题目描述 前几个月放映的头号玩家简直火得不能再火了,作为一个探索终极AI的研究人员,月神自然去看了此神剧. 由于太过兴奋,晚上月神做了一个奇怪的梦,月神梦见自己掉入了一个 ...

  2. 2016校招真题解析(一)小米git

    题目描述 git是一种分布式代码管理工具,git通过树的形式记录文件的更改历史,比如: base'<--base<--A<--A' ^ | --- B<--B' 小米工程师常常 ...

  3. 牛客网——2017校招真题在线编程(pythonC++)

    牛客网--2017校招真题在线编程(python&C++) 1.n个数里的最小k个 题目描述 找出n个数里最小的k个 输入描述: 每个测试输入包含空格分割的n+1个整数,最后一个整数为k值,n ...

  4. 最新!2016-2019计算机历年校招真题、面经、复习资料总结(11G/2284份文件)

    敲黑板!!!全网独一份!!!最新!!!最新!!!!有2019年的资料!!!持续更新中-- 整理了好几天,也在网上买了很多相关资料,终于把2016–2019年各大企业校招真题给总结全了.另外还有各大名企 ...

  5. 200 道算法面试题集锦!Python 实现,含华为、BAT 等校招真题!

    点击上方"AI有道",选择"置顶"公众号 重磅干货,第一时间送达 春招临近,无论是要找工作的准毕业生,还是身在职场想要提升自己的程序员,提升自己的算法内功心法. ...

  6. 网易2017春招笔试真题编程题集合

    网易2017春招笔试真题编程题集合 题目来源:牛客网 https://www.nowcoder.com/profile/7952866/test/7811777/83061 1.双核处理 题目描述 一 ...

  7. 拼多多2018年校招真题

    拼多多2018年校招真题 题目描述 给定一个无序数组,包含正数.负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1) 输入描述: 无序整数数组A[n] 输出 ...

  8. 牛客网 2018校招真题 美团点评 K的倍数

    Description 牛客网 2018校招真题 K的倍数 Solving Ideas sum[i + 1]: 表示序列p[0]...p[i]的和 从长度最大的子串开始判断,当剩余需要判断子串长度不可 ...

  9. 牛客网 2018校招真题 摩拜 排序次数

    Description 牛客网 2018校招真题 排序次数 Solving Ideas 将数组a的元素拷贝到数组b 对数组b进行排序 对比数组b,统计数组a中已排序的元素个数 如:a = [2, 11 ...

最新文章

  1. u-boot中filesize环境变量【转载】
  2. ZendFramework的介绍、安装和实例运行
  3. WCF服务一:WCF服务简介
  4. c语言考试长沙理工大学,2013年长沙理工大学C语言考试试卷A.doc
  5. Oracle使用goldengate分别向Oracle和mysql双路的单向复制
  6. 不花钱的pdf编辑器_真香!免费pdf处理工具,等你来拿。工作又轻松了一步
  7. Kubernetes详解(九)——资源配置清单创建Pod实战
  8. 在ASP.NET WebAPI 中使用缓存【Redis】
  9. Tomcat中server.xml配置及Context的配置说明
  10. 产品经理常见沟通问题
  11. 818释放规模效能,苏宁易购全场景智慧零售迈上新台阶
  12. JAVA文件传输程序
  13. eviews计算covar_第7章 我国商业银行风险溢出效应的度量—基于GARCH-CoVaR模型
  14. Vb自动读取本地HTML,VB读取网页内容 方法汇总 - mystic的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...
  15. Python 模块—计算三角形的斜边长
  16. Excel数据透视表: GetPivotData
  17. linux mv命令的功能,linux常用命令:Linux常用命令之mv命令是什么?
  18. js实现表单form提交前进行确认提示
  19. NOJ [1314] Brave Sword
  20. 生活明朗,万物可爱,人间值得,未来可期

热门文章

  1. Kafka单节点多broker的部署和使用
  2. 3-40HDFS读数据流程
  3. [Unity][FlowCanvas] FlowScript 实现基础人物移动
  4. python3 正则 去除 html标签、提取正文内容_Python通过正则表达式去除(过滤)HTML标签,提取文字...
  5. COCO数据集提取自己需要的类,转VOC
  6. Python编写caffe代码
  7. BCC实例(如何修改NS解析方式为百度智能云解析) - 解答篇
  8. ECS 与 BCH的使用心得 - 引用篇
  9. ios 渐变透明背景_15张案例,告诉你PPT背景的处理套路
  10. 友源社区APP论坛源码+网站源码