机试指南第二章-经典入门-Hash的应用自解
2024-09-20 19:33:56
Hash的应用:
Hash即散列,不像数据结构与算法中讲的各种Hash方法和冲突处理等过多的阐述,以下主要介绍Hash在机试试题解答中的作用。
例2.5 统计同成绩学生人数
Hash解法AC代码:(一般想到的也是这种解法)
#include<cstring>
#include<iostream>
using namespace std; int grade[]; int main()
{
int n, m, index;
memset(grade, , sizeof(grade));
while (cin >> n)
{
for (int i = ; i < n; i++)
{
cin >> m;
grade[m]++;
}
cin >> index;
cout << grade[index] << endl;
}
return ;
}
例2.6 Sort
时间限制:1 秒 内存限制:128 兆
题目描述:
给你n个整数,请按从大到小的顺序输出其中前m大的数。
输入:
每组测试数据有两行,第一行有两个数n,m(0<n,m<1000000),第二行包含n 个各不相同,且都处于区间[-500000,500000]的整数。
输出:
对每组测试数据按从大到小的顺序输出前m大的数。
样例输入:
- -
样例输出:
AC代码:
#include<cstring>
#include<iostream> using namespace std; int num[];
const int UPSET = ;
const int DOWNSET = -; int main()
{
int n, m, x;
memset(num, , sizeof(num));
while (cin >> n >> m)
{
for (int i = ; i < n; i++)
{
cin >> x;
num[x+ UPSET]++;
}
for (int i = UPSET; i >= DOWNSET; i--)
{
if (num[i + UPSET] == )
{
cout << i;
m--;
if (m != )cout << " ";
else
{
cout << endl;
break;
}
}
}
}
return ;
}
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm> using namespace std;
int a[]; bool cmp(int a,int b)
{
return a > b;
} int main()
{
int n, m;
while (scanf("%d%d", &n, &m) != EOF)
{
for (int i = ; i < n; i++)scanf("%d", &a[i]);
sort(a, a + n, cmp);
for (int i = ; i < m - ; i++)printf("%d ", a[i]);
printf("%d\n", a[m-]);
}
//system("pause");
return ;
}
二刷
最新文章
- css兼容性大坑
- 不同材质怎么通过ZBrush赋予同一个模型上
- Script Component 引用package variable
- Java魔法堂:注释和注释模板
- C#中this的 四种 用法
- nyoj------170网络的可靠性
- 任务管理界面添加显示RAM信息
- 从零开始学ios开发(十五):Navigation Controllers and Table Views(中)
- Linux命令(1):cd命令
- 征服 Nginx + Tomcat
- Spring+SpringMVC+Mybatis 利用AOP自定义注解实现可配置日志快照记录
- 深入理解linux网络技术内幕读书笔记(二)--关键数据结构
- MAC上python环境搭建
- HTML5拖动画布/拖放
- hdu1035
- Vulkan Tutorial 26 view and sampler
- 有终将被编程潮流淹没的程序员,那是因为没学python人工智能吧?
- 意外的php之学习笔记
- gcc8.2安装
- spark基础知识
热门文章
- zabbix4.2.5常见问题指南
- Apache Shiro<;=1.2.4反序列化RCE漏洞
- springboot使用jpa案例
- Centos 7 命令行版虚拟机安装
- go 学习 (四):接口 &; 方法
- 开源项目 03 DocX
- 平安寿险Java面试-社招-四面(2019/08)
- 【BIRT】修改主题背景颜色
- java.lang.NumberFormatException: Infinite or NaN原因之浮点类型除数为0结果探究
- MySQL免安装配置步骤