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
40
41
42
43
#include<bits/stdc++.h>
using namespace std; 

int main(){
    int n; cin>>n; 
    int A[n], odp[n], pref[n]; 
    for(int i = 0; i < n; i++){
        cin>>A[i]; 
        odp[i] = A[i]; 
    }

    sort(A, A+n); 
    reverse(A, A+n); 

    pref[n-1] = A[n-1];

    for (int i = n-2; i >= 0; i--){
        pref[i] = pref[i+1] + A[i]; 
    }
    pref[n-1] = 0; 
    int p = n-2; 
    while (A[p] == A[p+1]){
        pref[p] = 0; 
        p--; 
    }

    int naj = A[0]; 
    
    for (int i = n-2; i >= 0; i--){
        if (A[i] >= pref[i+1])
        naj = A[i]; 
    }
    
    for (int i = 0; i < n; i++)
        if (odp[i] >= naj)
            cout<<"T"; 
        else 
            cout<<"N"; 

    cout<<endl; 
    
        
}