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
44
45
46
47
#include<bits/stdc++.h>
using namespace std;
pair<int, int>tab[500010];
bool czy[500010];
int main()
{
	int n, i;
	long long s=0;
	scanf("%d", &n);
	for(i=0;i<n;i++)
	{
		scanf("%d", &tab[i].first);
		tab[i].second=i;
		s+=tab[i].first;
	}
	sort(tab, tab+n);
	if(tab[0].first==tab[n-1].first)
	{
		for(i=0;i<n;i++)
			printf("N");
		return 0;
	}
	czy[tab[n-1].second]=1;
	s-=tab[n-1].first;
	for(i=n-2;i>=0;i--)
	{
		if(tab[i].first==tab[0].first)
		{
			s=tab[i].first;
		}
		if(s>tab[i+1].first)
		{
			s-=tab[i].first;
			czy[tab[i].second]=1;
		}
		else
			break;
	}
	for(i=0;i<n;i++)
	{
		if(czy[i]==1)
			printf("T");
		else
			printf("N");
	}
	
}