#include #include #include #include #include using namespace std; typedef long long LL; void validateName(string s) { assert(s.size() >= 1 && s.size() <= 10); for(int i=0;i='a' && s[i]<='z'); } int main() { int N, M; string founder, claimant, bestClaimant; map blood; cin >> N >> M >> founder; assert(N >= 2 && N <= 50); assert(M >= 2 && M <= 50); blood[founder] = 1LL<<50; vector c(N), p1(N), p2(N); for(int i=0;i> c[i] >> p1[i] >> p2[i]; validateName(c[i]); validateName(p1[i]); validateName(p2[i]); assert(p1[i]!=p2[i]); assert(c[i]!=founder); } for(int i=0;i> claimant; validateName(claimant); assert(claimant != founder); if (blood[claimant] > best) { best = blood[claimant]; bestClaimant = claimant; bad = false; } else if (blood[claimant] == best) bad = true; } cout << bestClaimant << endl; assert(!bad); return 0; }