#include #include using namespace std; struct team { char s[50]; int goals; int points; } teams[10]; int nr = 0; void putin( char name[50], int goals, int points) { for(int i = 1; i<=nr; ++i) { if( strcmp(name, teams[i].s) == 0) { teams[i].goals += goals; teams[i].points += points; return; } } ++nr; strcpy(teams[nr].s,name); teams[nr].goals = goals; teams[nr].points = points; } void initTeams() { for(int i= 0; i<=6; ++i) { memset(teams[i].s,0,sizeof(teams[i].s)); teams[i].goals = 0; teams[i].points = 0; } } bool fcomp(team a, team b) { if(a.points - b.points) return a.points > b.points; if(a.goals - b.goals) return a.goals > b.goals; return a.s[0] < b.s[0]; } int main() { initTeams(); for(int i = 0; i< 6; ++i) { char t1[50], t2[50]; int g1,g2; scanf("%s %s %d %d",t1,t2,&g1,&g2); if(g1 > g2) { putin(t1,g1,3); putin(t2,g2,0); } else if(g1 < g2) { putin(t2,g2,3); putin(t1,g1,0); } else { putin(t1,g1,1); putin(t2,g2,1); } } sort(teams + 1, teams + 5, fcomp); for(int i = 1; i <= 4; ++i) { printf("%s\n",teams[i].s); } return 0; }