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


Problem

6/11

関数オブジェクトによるベクトルのソート

Theory Click to read/hide

関数オブジェクトをコンパレータとして指定することもできます。これは、sort 関数を呼び出す前に作成できます。
例:

構造体 {
        bool operator()(int a, int b) const
        {
            < b; を返す
        }
    }cmp;

Problem

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

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!