去除重复数字

  1. 【基础】去除重复数字 [ 刷题2路4线 ]

时间限制: 1000MS

空间限制: 16MB

结果评判: 文本对比

正确/提交: 29 (21) / 45

官方标签: 数组

普及-

题目描述

给你N个数(n<=100),每个数都在(0~1000)之间,其中由很多重复的数字,请将重复的数字只保留一个,并将剩下的数由小到大排序并输出。

输入描述

输入有2行,

第1行为1个正整数,表示数的个数:N

第2行有N个用空格隔开的整数。

输出描述

第1行为1个正整数M,表示不相同数的个数。

接下来的M行,每行一个整数,表示从小到大排好序的不相同的数。

样例

×样例只是举例,并非全部测试数据,请保证您的程序能应对任意符合题意的数据!

输入 复制

10

20 40 32 67 40 20 89 300 400 15

输出 复制

8

15

20

32

40

67

89

300

400

#include<bits/stdc++.h>

using namespace std;

int a[107];

int main(){

int n;

cin>>n;

for(int i=0;i<n;i++){

cin>>a[i];

}

sort (a , a + n );

for(int i = 1;i<n;i++){

if(a[i]==a[i-1]){

a[i-1]=0;

}

}

;

int cnt=0;

for(int i=0;i<n;i++){

if(a[i]!=0){

cnt++;

}

}

cout<<cnt<<endl;

for(int i=0;i<n;i++){

if(a[i]!=0){

cout<<a[i]<<endl;

}

}

return 0;

}

相关推荐
c++初学者ABC20 分钟前
学生管理系统C++版(简单版)详解
c++·结构体·学生管理系统
kucupung20 分钟前
【C++基础】多线程并发场景下的同步方法
开发语言·c++
L73S3726 分钟前
C++入门(1)
c++·程序人生·考研·蓝桥杯·学习方法
Bunury28 分钟前
组件封装-List
javascript·数据结构·list
Joeysoda31 分钟前
Java数据结构 (从0构建链表(LinkedList))
java·linux·开发语言·数据结构·windows·链表·1024程序员节
迂幵myself31 分钟前
14-6-1C++的list
开发语言·c++·list
天乐敲代码34 分钟前
JAVASE入门九脚-集合框架ArrayList,LinkedList,HashSet,TreeSet,迭代
java·开发语言·算法
比特在路上35 分钟前
ListOJ14:环形链表II(寻找环的入口点)
数据结构·链表
十年一梦实验室38 分钟前
【Eigen教程】矩阵、数组和向量类(二)
线性代数·算法·矩阵
Kent_J_Truman40 分钟前
【子矩阵——优先队列】
算法