For this Question: There is a contest containing 2 problems A and B. 2 strong participants P and Q participated in the contest and solved both the problems. P made AC submissions on problems A and B at time instants P<sub>A</sub> and P<sub>B</sub> respectively while Q made AC submissions on problems A and B at time instants Q<sub>A</sub> and Q<sub>B</sub>. It is given that the time penalty is the minimum time instant at which a participant has solved both the problems. Also the participant with the lower time penalty will have a better rank. Determine which participant got the better rank or if there is a TIE.The first line will contain T, number of test cases. Then the test cases follow. Each test case contains a single line of input, four integers P<sub>A</sub>, P<sub>B</sub>, Q<sub>A</sub>, Q<sub>B</sub>.

<b>Constraints</b>
1 &le; T &le; 1000
1 &le; P<sub>A</sub>, P<sub>B</sub>, Q<sub>A</sub>, Q<sub>B</sub> &le; 100For each test case, output P if P got a better rank, Q if Q got a better rank, TIE otherwise.Sample Input :
4
5 10 2 12
10 30 15 15
20 8 4 20
6 6 6 6

Sample Output :
P
Q
TIE
TIE
Explanation :
<ul><li>Time penalty incurred by participant P = 10. Time penalty incurred by participant Q = 12. Since 10 < 12, P gets a better rank. </li><li>Time penalty incurred by participant P = 30. Time penalty incurred by participant Q = 15. Since 15 < 30, Q gets a better rank. </li><li>Time penalty incurred by participant P = 20. Time penalty incurred by participant Q = 20. Since 20 = 20, P and Q gets a same rank (TIE). </li><li>Time penalty incurred by participant P = 6. Time penalty incurred by participant Q = 6. Since 6 = 6, P and Q gets a same rank (TIE). </li></ul>, I have written this Solution Code: #include <bits/stdc++.h>

#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>

using namespace std;
using namespace __gnu_pbds;

template <class T>
using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;

template <class key, class value, class cmp = std::less<key>>
using ordered_map = tree<key, value, cmp, rb_tree_tag, tree_order_statistics_node_update>;
// find_by_order(k)  returns iterator to kth element starting from 0;
// order_of_key(k) returns count of elements strictly smaller than k;

#ifdef LOCAL
#define debug(...) cerr << "[" << #__VA_ARGS__ << "]:", debug_out(__VA_ARGS__)
#else
#define debug(...) 2351
#endif

#define int long long

mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());

inline int64_t random_long(long long l = LLONG_MIN, long long r = LLONG_MAX) {
    uniform_int_distribution<int64_t> generator(l, r);
    return generator(rng);
}

int32_t main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    auto start = std::chrono::high_resolution_clock::now();

    int t;
    cin >> t;
    while (t--) {
        int pa, pb, qa, qb;
        cin >> pa >> pb >> qa >> qb;
        int A = max(pa, pb), B = max(qa, qb);
        if (A < B)
            printf("P\n");
        else if (A > B)
            printf("Q\n");
        else
            printf("TIE\n");
    }

    auto stop = std::chrono::high_resolution_clock::now();
    auto duration = std::chrono::duration_cast<std::chrono::nanoseconds>(stop - start);
    cerr << "Time taken : " << ((long double)duration.count()) / ((long double)1e9) << "s\n";
    return 0;
}, In this Programming Language: C++, Now tell me if this Code is compilable or not?