描述

寻找第K大数

  N个小朋友在一起做游戏。每个小朋友在自己的硬纸板上写一个数,然后同时举起来。接着,小y老师提一个问题,看哪个小朋友先抢答出来。问题是:在这N个数中,第K大的是哪个数?请你编程完成。

水题一道:
  桶排
  1. #include<cstdio>
  2. #include<iostream>
  3. #include<algorithm>
  4. #include<vector>
  5. #include<queue>
  6. #include<cstring>
  7. #include<cmath>
  8. using namespace std;
  9. int a[],b[];
  10. int n,k,maxn;
  11. int main()
  12. {
  13. scanf("%d%d",&n,&k);
  14. for(int i=,x;i<=n;i++)
  15. {
  16. scanf("%d",&x);
  17. maxn=max(maxn,x);
  18. if(x>=) a[x]++;
  19. else b[-x]++;
  20. }
  21. for(int i=maxn;i>=;i--)
  22. {
  23. k-=a[i];
  24.  
  25. if(k<=)
  26. {
  27. printf("%d",i);
  28. return ;
  29. }
  30. }
  31. for(int i=;i<=;i++)
  32. {
  33. k-=b[i];
  34. if(k<=)
  35. {
  36. printf("%d",-i);
  37. return ;
  38. }
  39. }
  40. return ;
  41. }

P3290 寻找第K大数的更多相关文章

  1. 分治算法--寻找第k大数

    问题描述:给定线性序集中n个元素和一个整数k,1≤k≤n,要求找出这n个元素中第k大的元素,(这里给定的线性集是无序的). 其实这个问题很简单,直接对线性序列集qsort,再找出第k个即可.但是这样的 ...

  2. 寻找第K大数的方法总结

    http://www.cnblogs.com/zhjp11/archive/2010/02/26/1674227.html

  3. 寻找数组中第K大数

    1.寻找数组中的第二大数 using System; using System.Collections.Generic; using System.Linq; using System.Text; u ...

  4. 编程之美 海量数据寻找 K 大数

    1. 使用最小堆, 设置最小堆的大小为K, 仅需遍历一遍即可 2. 寻找最大的 K 个数实质上是寻找第 K 大的数. 通过二分法在区间内不断校正 mid 的值来找到 pivot, 时间复杂度为 o(N ...

  5. 寻找第K大的数

    在一堆数据中查找到第k个大的值. 名称是:设计一组N个数,确定其中第k个最大值,这是一个选择问题,解决这个问题的方法很多. 所谓“第(前)k大数问题”指的是在长度为n(n>=k)的乱序数组中S找 ...

  6. 海量数据中找出前k大数(topk问题)

    海量数据中找出前k大数(topk问题) 前两天面试3面学长问我的这个问题(想说TEG的3个面试学长都是好和蔼,希望能完成最后一面,各方面原因造成我无比想去鹅场的心已经按捺不住了),这个问题还是建立最小 ...

  7. 寻找第K大的数(快速排序的应用)

    有一个整数数组,请你根据快速排序的思路,找出数组中第K大的数.给定一个整数数组a,同时给定它的大小n和要找的K(K在1到n之间),请返回第K大的数,保证答案存在.测试样例:[1,3,5,2,2],5, ...

  8. zcmu 1540第k大数

    1540: 第k大数Time Limit: 10 Sec  Memory Limit: 128 MB[Submit][Status][Web Board]Description有两个序列a,b,它们的 ...

  9. BZOJ 3110: [Zjoi2013]K大数查询 [树套树]

    3110: [Zjoi2013]K大数查询 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 6050  Solved: 2007[Submit][Sta ...

随机推荐

  1. ACM学习历程—HDU1028 Ignatius and the Princess III(递推 || 母函数)

    Description "Well, it seems the first problem is too easy. I will let you know how foolish you ...

  2. 自己实现的vector

    #include <iostream> #include <memory> using std::cout; using std::endl; using std::alloc ...

  3. WPF 中 UserControl作为另一个Process宿主到Window里, ErrorTemplate的默认红框没有出现

    最近做WPF项目遇到一个问题, 我有2个process, 一个Process里只有Usercontrol, 另一个Process获取前一个Process中Usercontrol并host到当前的win ...

  4. 【转】Pro Android学习笔记(二):开发环境:基础概念、连接真实设备、生命周期

    在Android学习笔记(二):安装环境中已经有相应的内容.看看何为新.这是在source网站上的Android架构图,和标准图没有区别,只是这张图颜色好看多了,录之.本笔记主要讲述Android开发 ...

  5. c++常用函数STL

    完c++快一年了,感觉很有遗憾,因为一直没有感觉到c++的强大之处,当时最大的感觉就是这个东西的输入输出比C语言要简单好写. 后来我发现了qt,opencv,opengl,原来,c++好玩的狠. 在这 ...

  6. jquery中对于批量deferred的处理

    此代码仿照jquery源码中$.when()的实现 function test(i) { var dfd = $.Deferred(); if(i%2 == 0) { console.log(&quo ...

  7. IP简介2

    本笔记介绍java net IP A 类 主要是大型的交换机 1-126  B类 128-191 分配给各个国家的典型的服务器 每个网段支持255*255个设备  每一个B类都可以分配444416个C ...

  8. Promise API

    Promise API     刚刚接触promise这个东西,网上看了很多博客,大部分是讲怎么用Promise,丝毫没提怎么实现Promise. 我不甘 心,可是真去看JQuery或者Angular ...

  9. POJ-3069

    Saruman's Army Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10994   Accepted: 5555 D ...

  10. ural 1500 Pass Licenses (状态压缩+dfs)

    1500. Pass Licenses Time limit: 2.5 secondMemory limit: 64 MB A New Russian Kolyan believes that to ...