【ETOJ P1012】排序去重问题 题解(集合)

2024-02-13 20:44

本文主要是介绍【ETOJ P1012】排序去重问题 题解(集合),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目描述

给定一个大小为 n n n 的数组 a a a,请将 a a a 中元素去重后从小到大排序输出。

输入格式

第一行一个整数 T T T 表示测试样例个数。 ( 1 ≤ T ≤ 100 ) (1≤T≤100) (1T100)

对于每一个测试样例:

  • 第一行一个整数 n n n 表示数组大小。 ( 1 ≤ n ≤ 1 0 3 ) (1≤n≤10^3) (1n103)
  • 第二行 n n n 个整数表示数组元素。 ( 1 ≤ a i ≤ 500 ) (1≤a_i≤500) (1ai500)

输出格式

对于每个样例,在一行输出结果后换行。

样例输入1

2
5
1 1 3 2 2
3
1 2 3

样例输出1

1 2 3
1 2 3

思路

set容器的特性是所有元素都会自动排序,并且不包含重复的元素。

首先,通过cin >> t;从输入中读取测试用例的数量。然后进入一个循环,每次循环开始时,都会清空set容器s1,然后通过cin >> n;读取每个测试用例中的元素数量。

接着,进入另一个循环,每次循环都会读取一个元素a,并将其插入到set容器s1中。由于set容器的特性,所有插入的元素都会自动排序,且不包含重复元素。

最后,通过一个范围for循环遍历set容器s1,并将容器中的每个元素输出,实现了排序和去重的功能。在每个测试用例处理完之后,都会输出一个换行符,表示这个测试用例的结果已经输出完毕。


AC代码

#include <algorithm>
#include <iostream>
#include <set>
#define AUTHOR "HEX9CF"
using namespace std;int t, n;
set<int> s1;int main() {ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin >> t;while (t--) {s1.clear();cin >> n;while (n--) {int a;cin >> a;s1.insert(a);}for (auto &i : s1) {cout << i << " ";}cout << endl;}return 0;
}

这篇关于【ETOJ P1012】排序去重问题 题解(集合)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/706561

相关文章

Redis中的数据一致性问题以及解决方案

《Redis中的数据一致性问题以及解决方案》:本文主要介绍Redis中的数据一致性问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Redis 数据一致性问题的产生1. 单节点环境的一致性问题2. 网络分区和宕机3. 并发写入导致的脏数据4. 持

vscode不能打开终端问题的解决办法

《vscode不能打开终端问题的解决办法》:本文主要介绍vscode不能打开终端问题的解决办法,问题的根源是Windows的安全软件限制了PowerShell的运行,而VSCode默认使用Powe... 遇到vscode不能打开终端问题,一直以为是安全软件限制问题,也没搜到解决方案,因为影响也不大,就没有管

Python与Java交互出现乱码的问题解决

《Python与Java交互出现乱码的问题解决》在现代软件开发中,跨语言系统的集成已经成为日常工作的一部分,特别是当Python和Java之间进行交互时,编码问题往往会成为导致数据传输错误、乱码以及难... 目录背景:为什么会出现乱码问题产生的场景解决方案:确保统一的UTF-8编码完整代码示例总结在现代软件

使用easy connect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题

《使用easyconnect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题》:本文主要介绍使用easyconnect之后,maven无法... 目录使用easGWowCy connect之后,maven无法使用,原来需要配置-DJava.net.pr

解决tomcat启动时报Junit相关错误java.lang.ClassNotFoundException: org.junit.Test问题

《解决tomcat启动时报Junit相关错误java.lang.ClassNotFoundException:org.junit.Test问题》:本文主要介绍解决tomcat启动时报Junit相... 目录tomcat启动时报Junit相关错误Java.lang.ClassNotFoundException

解决Maven项目报错:failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0的问题

《解决Maven项目报错:failedtoexecutegoalorg.apache.maven.plugins:maven-compiler-plugin:3.13.0的问题》这篇文章主要介... 目录Maven项目报错:failed to execute goal org.apache.maven.pl

MySQL主从同步延迟问题的全面解决方案

《MySQL主从同步延迟问题的全面解决方案》MySQL主从同步延迟是分布式数据库系统中的常见问题,会导致从库读取到过期数据,影响业务一致性,下面我将深入分析延迟原因并提供多层次的解决方案,需要的朋友可... 目录一、同步延迟原因深度分析1.1 主从复制原理回顾1.2 延迟产生的关键环节二、实时监控与诊断方案

SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法

《SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法》在SQLyog中执行存储过程时出现的前置缩进问题,实际上反映了SQLyog对SQL语句解析的一个特殊行为,本文给大家介绍了详... 目录问题根源正确写法示例永久解决方案为什么命令行不受影响?最佳实践建议问题根源SQLyog的语句分

解决IDEA报错:编码GBK的不可映射字符问题

《解决IDEA报错:编码GBK的不可映射字符问题》:本文主要介绍解决IDEA报错:编码GBK的不可映射字符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录IDEA报错:编码GBK的不可映射字符终端软件问题描述原因分析解决方案方法1:将命令改为方法2:右下jav

MyBatis模糊查询报错:ParserException: not supported.pos 问题解决

《MyBatis模糊查询报错:ParserException:notsupported.pos问题解决》本文主要介绍了MyBatis模糊查询报错:ParserException:notsuppo... 目录问题描述问题根源错误SQL解析逻辑深层原因分析三种解决方案方案一:使用CONCAT函数(推荐)方案二: