#include <iostream> #include <algorithm> #include <string.h> using namespace std; struct el { int pct,nr; }t[10]; int nr_team,ap1,ap2,val1,val2; char s1[101],s2[101],team[10][101]; inline bool comp(el e1,el e2) { return e1.pct<e2.pct; } inline void solve(char s1[],int val1,int val2) { int j,ap1=1; for (j=1;j<=nr_team;j++) { for (int k=0;k<strlen(s1);k++) if (team[j][k]!=s1[k]) ap1=0; if (ap1) {if (val1>val2) t[j].pct+=3; else if (val1==val2) t[j].pct++; break; } } if (j==nr_team+1) { nr_team++; for (int j=0;j<strlen(s1);j++) team[nr_team][j]=s1[j]; } } int main() { for (int i=1;i<=6;i++) { cin>>s1>>s2>>val1>>val2; solve(s1,val1,val2); solve(s2,val2,val1); } for (int i=1;i<=4;i++) t[i].nr=i; sort(t+1,t+5,comp); for (int i=1;i<=4;i++) { int j=0; while (team[t[i].nr][j]) cout<<team[t[i].nr][j++]; cout<<'\n'; } }