1. 程式人生 > >C++ STL排序後去重函式

C++ STL排序後去重函式

陣列排序

(100/100 分數)

題目描述

輸入n個數,對這n個數去重之後排序,並輸出從小到大排序結果

(友情提示:去重函式unique

排序函式sort

具體函式使用規則請查閱相關文件)

輸入描述

首先輸入n,然後接著輸入n個數。其中1<=n<=100,每個數的範圍1<=x<=n

輸出描述

輸出去重之後從小到大排序結果

樣例輸入

5
1 3 2 1 3

樣例輸出

1
2
3

排序後去重,這個要自己實現也很容易,用一個輔助陣列就行,這裡用unique函式,注意返回值

#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
const int N = 100000;
int a[N + 5];
int main()
{
	int n;
	cin >> n;
	for (int i = 0; i < n; ++i)
	{
		scanf_s("%d", &a[i]);
	  
	}
	sort(a, a + n);
	n = unique(a, a + n) - a;       //關鍵的一句
	for (int i = 0; i < n; ++i)
	{
		printf("%d\n", a[i]);
	}
	
	
	return 0;
}