おじさんの競プロ記録

自分の力で解答できた問題を振り返り、理解を深めたいです。

AtCoder Beginner Contest 041 C - 背の順

問題について考えたこと

問題文へ

出席番号と身長をセットにして、身長で降順にソートして出力。

pairをソートする際は、firstから比べることと同じ身長はいないことから、firstに身長を入れました。

#define _GIBCXX_DEBUG
#include <bits/stdc++.h>
using namespace std;
#define rep(i, n) for (int i = 0; i < (n); ++i)
#define all(v) v.begin(), v.end()
using namespace std;
using P = pair<int, int>;


int main(void) {
  int N;
  cin >> N;
  vector<P> vp(N);
  rep(i, N) {
    int a;
    cin >> a;
    vp[i].first = a;
    vp[i].second = i + 1;
  }

  sort(vp.rbegin(), vp.rend());

  rep(i, N) {
    cout << vp[i].second << endl;
  }
  
  return 0;
}