#include #include #include using namespace std; const int MAX_N = 200000; int N; string tmp; int C; vector edges[MAX_N]; bool used[MAX_N]; string iupac(int); int main() { cin >> N; for (int i = 0; i < N; i++) { for (int j = 0; j < 4; j++) { cin >> tmp; if (tmp != "H") { C = stoi(tmp); edges[i].push_back(C - 1); } } } cout << iupac(0) << endl; return 0; } string iupac(int r) { used[r] = true; string ans; for (int i = 0; i < edges[r].size(); i++) { if (!used[edges[r][i]]) { string tmp = iupac(edges[r][i]); ans += "(" + tmp.substr(0, tmp.size() - 3) + "yl)"; } } ans += "methane"; return ans; }