#include <bits/stdc++.h> using namespace std; typedef long long ll; int a, n, x, w, s; int T[500010]; int tab[500010]; int main(){ cin.tie(0); ios_base::sync_with_stdio(0); cin >> n; a=1; w=n; while (n>0){ cin >> T[a]; tab[a]=T[a]; a++; n--; } sort (T+1, T+a); a=1; s=0; while (a<=w){ //cout << s; //cout << " T[a]"<< T[a] << endl; if (s>T[a]){ s=s+T[a]; } else if ((s<T[a])&&(T[a]>1)){ s=T[a]+s; x=T[a]; } else { s=T[a]; } a++; } a=1; while (a<=w){ if (tab[a]>=x&&x>0){ cout << "T"; } else { cout << "N"; } a++; } }
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 48 49 50 51 52 53 54 55 | #include <bits/stdc++.h> using namespace std; typedef long long ll; int a, n, x, w, s; int T[500010]; int tab[500010]; int main(){ cin.tie(0); ios_base::sync_with_stdio(0); cin >> n; a=1; w=n; while (n>0){ cin >> T[a]; tab[a]=T[a]; a++; n--; } sort (T+1, T+a); a=1; s=0; while (a<=w){ //cout << s; //cout << " T[a]"<< T[a] << endl; if (s>T[a]){ s=s+T[a]; } else if ((s<T[a])&&(T[a]>1)){ s=T[a]+s; x=T[a]; } else { s=T[a]; } a++; } a=1; while (a<=w){ if (tab[a]>=x&&x>0){ cout << "T"; } else { cout << "N"; } a++; } } |