1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <cstdio>
#include <tuple>
#include <vector>

using namespace std;

int main() {
  int n;
  vector<pair<int, int>> winners;

  scanf("%d", &n);

  for (int i = 0; i < n; i++) {
    char *participation = new char[4];
    int finals;

    scanf("%s %d", participation, &finals);

    if (participation[0] == 'T') {
      winners.push_back({i + 1, finals});
    }
  }

  vector<pair<int, int>> finalists(winners.begin(), winners.begin() + 10);
  int start = 10;

  while (finalists.size() < 20) {
    if (winners[start].second < 2) {
      finalists.push_back(winners[start]);
    }
    start++;
  }

  for (int i = 0; i < finalists.size(); i++) {
    printf("%d ", finalists[i].first);
  }

  return 0;
}