Module: コンパレータによるソート


Problem

1/11

ベクトルソート: 開始

Theory Click to read/hide

コンパレータによる並べ替え
ベクトル (配列など)  sort() 関数を使用して並べ替えることができます。ただし、この関数はデフォルトで昇順に並べ替えます。配列を別の順序で並べ替えるには、いわゆる コンパレータ を使用する必要があります。これは、2 つのオブジェクトを比較して並べ替え順序を設定する関数です。 。
 
配列の要素を昇順に並べ替えるコンパレータの例。 bool cmp(最初に int、2 番目に int) { 最初に戻る < 2番; }
作成したコンパレーターを使用してベクトル A をソートします。 sort(A.begin(), A.end(), cmp); イテレータについて考える

Problem

一連の整数が与えられます。配列を作成して降順に並べ替えるプログラムを作成します。
 
入力
最初に与えられた数値 N -mdash;配列内の要素の数 (1<=N<=100)。次に、N 個の数値がスペースで区切られ、配列の要素として書き込まれます。配列は整数で構成されます。
 
出力
降順にソートされた配列を出力する必要があります。
 
<頭> <本体>
# 入力 出力
1 5
4 56 23 67 100
100 67 56 23 4
Write the program below
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;


bool cmp(int first, int second) {      
}

int main() {


int N;

cin >> N;
vector<int> A (N);


    for(int i = 0; i < N; i++)
        cin>>A[i];
		        
    sort(A.begin(), A.end(), cmp );

    for(int i = 0;i< N; i ++)
      cout<<A[i]<<" ";

    
}      

     

Program check result

To check the solution of the problem, you need to register or log in!