文章目录

  • 0034-求众数中的中位数
    • 题目描述
    • 输入描述
    • 输出描述
    • 输出输出样例
    • C++代码
  • 0035-满足条件的两个集合
    • 题目描述
    • 输入描述
    • 输出排序
    • 输出输出样例
    • C++ 代码

0034-求众数中的中位数

题目描述

1.众数是指一组数据中出现次数多的数
众数可以是多个
2.中位数是指把一组数据从小到大排列,最中间的那个数,
如果这组数据的个数是奇数,那最中间那个就是中位数
如果这组数据的个数为偶数,那就把中间的两个数之和除以2就是中位数
3.查找整型数组中元素的众数并组成一个新的数组
求新数组的中位数

输入描述

输入一个一维整型数组,数组大小取值范围 0<n<1000
数组中每个元素取值范围, 0<e<1000

输出描述

输出众数组成的新数组的中位数

输出输出样例

示例一
输入:
10 11 21 19 21 17 21 16 21 18 16
输出
21示例二
输入
2 1 5 4 3 3 9 2 7 4 6 2 15 4 2 4
输出
3示例三
输入
5 1 5 3 5 2 5 5 7 6 7 3 7 11 7 55 7 9 98 9 17 9 15 9 9 1 39
输出
7

C++代码

//
// Created by HANWENKE on 2022-09-19.
//
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
#include <map>
#include <algorithm>
using namespace std;
bool cmp( const pair<int,int>&a, const pair<int,int>&b){return a.second>b.second;
}/*解题思路* 首先要找到众数,那么可以使用has_map* 其次对hash_map进行排序,值最大的放到前面去* 让后通过迭代器遍历--将最大的放到vector中* 然后找到对应的中位数*/
int main(){map<int,int>tmap;//key记录数字,val记录个数string ss;getline(cin,ss);istringstream stemp(ss);int temp;while(stemp>>temp){tmap[temp]++;}vector<pair<int,int>>arr(tmap.size());int i=0;for(auto &x:tmap){arr[i++]=x;}//对map进行排序--需要重写比较函数sort(arr.begin(),arr.end(),cmp);vector<int>res;//记录众数出现的次数int key=arr.begin()->second;for(int i=0;i<arr.size();i++){if(arr[i].second==key){res.push_back(arr[i].first);}else{break;}}if(res.size()==1){cout<<res[0];return 0;}if(res.size()%2==1){cout<<res[res.size()%2];}else{//如果长度是偶数--第一个数字则为 减去1除以2,第二个为直接除以2的值int first=res[(res.size()-1)%2];int second=res[res.size()%2];cout<<(first+second)%2;}return 0;
}

0035-满足条件的两个集合

题目描述

同一个数轴x有两个点的集合A={A1,A2,…,Am}和B={B1,B2,…,Bm} A(i)和B(j)均为正整数

A、B已经按照从小到大排好序,AB均不为空

给定一个距离R 正整数,列出同时满足如下条件的 (A(i),B(j))数对

  1. A(i)<=B(j)
  2. A(i),B(j)之间距离小于等于R
  3. 在满足1,2的情况下每个A(i)只需输出距离最近的B(j)
  4. 输出结果按A(i)从小到大排序

输入描述

第一行三个正整数m n R

第二行m个正整数 表示集合A

第三行n个正整数 表示集合B

输入限制 1<=R<=100000 1<=n,m<=100000 1<= A(i),B(j) <= 1000000000

输出排序

每组数对输出一行 A(i)和B(j) 以空格隔开

输出输出样例

输入
4 5 5
1 5 5 10
1 3 8 8 20输出
1 1
5 8
5 8

C++ 代码

//
// Created by HANWENKE on 2022-09-19.
//
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
using namespace  std;
int main(){int m,n,r;//未初始化的全局变量存在.bss段cin>>m>>n>>r;//清空缓冲区--重置cincin.clear();cin.sync();vector<int>arr1;vector<int>arr2;string ss;getline(cin,ss);istringstream s1(ss);int temp;while(s1>>temp){arr1.push_back(temp);}//清空缓冲区--重置cincin.clear();cin.sync();getline(cin,ss);istringstream s2(ss);while(s2>>temp){arr2.push_back(temp);}for(auto &x:arr1){for(auto &y:arr2){if(x<=y&&(y-x)<=r){//题目要求arr从小到大排序,因为arr1,和arr2本就有序,所以满足条件直接输出跳出循环就OKcout<<x<<" "<<y<<endl;break;}}}return 0;
}

华为OD机考:34-35-求众数中的中位数,求满足条件的两个集合相关推荐

  1. 华为OD机考——牛客10道练习题(Python版)

    注意:华为od机考--牛客10道练习题(Python版)仅供学习和参考,谢谢! #练习题-数组: ''' 1.求解连续数列 已知连续正整数数列{K}=K1,K2,K3...Ki的各个数相加之和为S,i ...

  2. 关于华为OD机考的澄清 + 说明

    1:因为华为OD机考碰到原题的概率较大,近期有人冒充我搞[机试代做.代考],把我的专栏代码直接发给考生赚取高额"代考费",并谎称本CSDN账号归他所有.建议各位小伙伴擦亮双眼,本人 ...

  3. 华为od机考攻略,参考资料

    od机考大部分题目网上都能搜索到原题,答案有查重,需要修改答案 一.题型.编译问题 关于题型: 机考共三题,两道简单题目各100分,一道较难题目200分,满分400,150分及以上通过 简单:字符串/ ...

  4. 华为OD机考 2022

    2022 题库 Q4 新题库 100分 01 真正的密码 100 02 羊.狼.农夫过河 100 03 单向链表中间节点 华为OD真题 100 04 租车骑绿岛 华为OD真题 100 05 完美走位 ...

  5. 华为OD机考心得 [收藏]

    华为od机试题库

  6. 华为OD机考20220622

    考试时间:2022-06-22 总分:136分 第一题:字符串分割-水仙花数(用例通过率:11.1%) 第二题:内存资源分配(用例通过率:95.8%) 第三题:模拟内存分配(用例通过率:15%) 之前 ...

  7. 华为od机考真题(JAVA)

    import java.util.Arrays; import java.util.Scanner; 001 [5键键盘的输出] 002 [N进制减法] 003 [TLV解码] 004 [VLAN资源 ...

  8. 华为OD机考题目(自动化测试)

    目次 1.求第k长的字串的长度 2.上N阶台阶问题 3.踢出石子问题 1.求第k长的字串的长度 描述 一个字符串只包含大写字母,求其连续相同字母子串中,长度第K长的子串长度,相同字母只取 最长那个子串 ...

  9. 华为od机考题目-幼儿园找出同班的小朋友(幼儿园分班)

    幼儿园两个半的小朋哟排队的时候混合在一起了,每位小朋友都直到自己是否与前面的一位小朋友同伴,请你帮忙把同班的小朋友找出来 小朋友的编号是整数,与前一位同班用Y表示,不同班用N表示 准备两个列表分别保存 ...

最新文章

  1. 负载均衡故障诊断:一个MSS值引发的疑案
  2. Quadratic equation(二次剩余)2019牛客多校第九场
  3. C++ functor 仿函数
  4. Python破解滑块验证码算法,完美避开人机识别
  5. 开发人员一定要加入收藏夹的网站(引用)
  6. 精华文稿 | 工业场景中机器人定位导航技术
  7. 千呼万唤始出来!诺基亚发预热海报:5摄手机真要来了
  8. java jdbc oracle rac_JDBC连接oracle RAC数据库配置
  9. 字节跳动BVC2解码器率先支持移动平台H.266标准8K解码
  10. httpget请求设置长度_Citrix ADCHTTP请求Smuggling详解
  11. Linux学习第一篇之Linux系统安装——系统分区
  12. C++ std::condition_variable wait() wait_for() 区别 怎么用 实例
  13. 干货分享 | 工业信息数据库安全现状与技术分析
  14. 一个div里面包含两个div让两个div垂直居中
  15. Backpack VI
  16. 与日历有关的小程序推荐
  17. 微信小程序第五篇:页面弹出效果及共享元素动画
  18. 用halcon提取衣服徽章
  19. S7-1200能不能仿真通信?
  20. 云原生之Linux命名空间和docker容器隔离

热门文章

  1. java项目-第145期ssm汽车在线销售系统-java毕业设计_计算机毕业设计
  2. Centos 配置yum 的几种方式、
  3. 如何确定数组中含有某个元素?
  4. 推荐系统系列之推荐系统概览(下)
  5. 改进zhang方法图像细化(单像素)
  6. OpenWrt与嵌入式Linux
  7. linux安装centos源,CentOS Linux安装RPMForge源
  8. 互联网黑话,被最近的上海人翻译火了
  9. 有赞零售小票打印跨平台解决方案 1
  10. 使用腾讯云服务器快速搭建网站教程