#include using namespace std; struct Card { int suit; int n; string orig; Card(): suit(' '), n(0), orig("") {} Card(string s): orig(s) { char suit_ = s[0]; char n_ = s[1]; if (suit_ == 'D') suit = 0; else if (suit_ == 'C') suit = 1; else if (suit_ == 'H') suit = 2; else suit = 3; if (n_ == 'K') n = 13; else if (n_ == 'A') n = 1; else if (n_ == 'T') n = 10; else if (n_ == 'J') n = 11; else if (n_ == 'Q') n = 12; else n = n_ - '0'; } bool operator<(const Card &rhs) const { if (suit == rhs.suit) return n < rhs.n; return suit < rhs.suit; } }; int main() { int n; cin >> n; vector cards(n); for (int i = 0; i < n; ++i) { string a; cin >> a; cards[i] = Card(a); } sort(cards.begin(), cards.end()); for (int i = 0; i < n; ++i) { cout <