C++STLソート後のデリバリー関数

907 ワード

配列ソート
 
(100/100スコア)
タイトルの説明
n個の数を入力し、このn個の数をリセットして並べ替え、小さいから大きいまで並べ替え結果を出力します.
(友情ヒント:脱重関数unique
ソート関数sort
具体的な関数使用規則は関連ドキュメントを参照してください)
説明の入力
まずnを入力し、次にn個の数を入力します.ここで、1<=n<=100であり、各数の範囲は1<=x<=nである
出力の説明
デリバリー後の小から大へのソート結果の出力
サンプル入力
 
5
1 3 2 1 3

サンプル出力
1
2
3

 
並べ替えてからやり直します.これは自分で実現するのも簡単です.補助配列を1つ使えばいいです.ここではunique関数を使って、戻り値に注意してください.
#include
#include
#include
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
", a[i]); } return 0; }