【洛谷 P1271】【深基9.例1】选举学生会 题解(计数排序)

简介: **深基9.例1**选举学生会,使用计数排序解决。给定$n$(≤999)候选人和$m$(≤2000000)选票,需按投票数排序选票。输入含$n$,$m$及$m$个候选人编号;输出排序后编号。示例:5名候选人,10张选票,输出`1 2 2 2 2 2 2 2 5 5`。代码:用数组记录每个候选人得票数,遍历数组打印每个候选人按票数的编号。

【深基9.例1】选举学生会

题目描述

学校正在选举学生会成员,有 $n(n\le 999)$ 名候选人,每名候选人编号分别从 1 到 $n$,现在收集到了 $m(m<=2000000)$ 张选票,每张选票都写了一个候选人编号。现在想把这些堆积如山的选票按照投票数字从小到大排序。

输入格式

输入 $n$ 和 $m$ 以及 $m$ 个选票上的数字。

输出格式

求出排序后的选票编号。

样例 #1

样例输入 #1

5 10
2 5 2 2 5 2 2 2 1 2

样例输出 #1

1 2 2 2 2 2 2 2 5 5

思路

计数排序,用数组储存票数。

ac代码

#include <iostream>
#include <cstring>
#define author "hex9cf"
using namespace std;

const int maxn = 100005;

int main() {
   
    int n, m;
    int vote[maxn];
    memset(vote, 0, sizeof(vote));
    cin >> n >> m;
    for(int i = 0; i < m; i++){
   
        int v;
        cin >> v;
        vote[v]++;
    }
    for(int i = 1; i <= n; i++){
   
        for(int j = 1; j <= vote[i]; j++){
   
            cout << i << " ";
        }
    }

    return 0;
}
目录
相关文章
|
消息中间件 缓存 物联网
MQTT常见问题之MQTT发送消息到阿里云服务器被拒如何解决
MQTT(Message Queuing Telemetry Transport)是一个轻量级的、基于发布/订阅模式的消息协议,广泛用于物联网(IoT)中设备间的通信。以下是MQTT使用过程中可能遇到的一些常见问题及其答案的汇总:
|
4月前
|
人工智能 供应链 大数据
保理公司推荐指南:2025年十大品牌盘点,聚焦海尔金融保理的核心优势
海尔金融保理凭借强大股东背景、12亿注册资本及“海创云链”科技平台,融合大数据、AI、区块链等技术,实现全流程线上化风控与放款。其“金融+科技+产业”模式深度服务中小微企业,覆盖全国29省市,累计投放超560亿元,获监管A级评定与多项创新奖项,位居2025年保理公司榜首,为供应链金融提供高效、智能的综合解决方案。
605 0
|
消息中间件 关系型数据库 MySQL
Flink--6、输出算子(连接到外部系统、文件、kafka、MySQL、自定义Sink)
Flink--6、输出算子(连接到外部系统、文件、kafka、MySQL、自定义Sink)
|
7月前
|
JSON 自然语言处理 API
电商 API 接口:多平台商品评论分析的利器
在电商竞争激烈的今天,商品评论成为消费者决策的重要参考。本文介绍如何通过电商 API 接口(如淘宝、京东等)高效获取多平台评论数据,并结合 Python 实现评论分析,包括评分统计、情感分析与趋势洞察,帮助商家快速优化产品与营销策略,实现数据驱动的精准决策。
272 0
|
5月前
|
机器学习/深度学习 人工智能
AI重塑电商拍摄:技术驱动的商业变革——5款AI模特图生成工具技术分析
AI技术正重塑电商拍摄:低成本、高效率生成逼真模特图,支持批量换装、换背景,助力商家快速上架、灵活试错。燕雀光年、Kaiber等工具实测好用,未来AI与实拍将互补共存。
593 0
|
供应链 搜索推荐 API
1688APP原数据API接口的开发、应用与收益(一篇文章全明白)
1688作为全球知名的B2B电商平台,通过开放的原数据API接口,为开发者提供了丰富的数据资源,涵盖商品信息、交易数据、店铺信息、物流信息和用户信息等。本文将深入探讨1688 APP原数据API接口的开发、应用及其带来的商业收益,包括提升流量、优化库存管理、增强用户体验等方面。
694 6
|
JavaScript
js实现转盘抽奖
js实现转盘抽奖
|
存储 算法 C++
弗洛伊德(Floyd)算法(C/C++)
弗洛伊德(Floyd)算法(C/C++)
|
关系型数据库 MySQL Java
实时计算 Flink版产品使用问题之如何提高Flink从MySQL读取数据的速度并减少延迟
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
自然语言处理
论文推荐:用多词元预测法提高模型效率与速度
《Better & Faster Large Language Models via Multi-token Prediction》论文提出了一种多词元预测框架,改善了大型语言模型(LLMs)的样本效率和推理速度。该方法通过一次预测多个词元,而非单个词元,提高了模型在编程和自然语言任务中的性能。实验显示,多词元预测在HumanEval和MBPP任务上性能提升,推理速度最高可提升3倍。此外,自我推测解码技术进一步优化了解码效率。尽管在小模型中效果不明显,但该方法为大模型训练和未来研究开辟了新途径。
662 0