#include #include #include #include #include using namespace std; class stats{ public: stats(){ wins=0.00; losses=0.00; rank=0.00; games=0.00; opponents.clear(); } void win(){ wins = wins + 1; } void lose(){ losses=losses + 1; } double getWins(){ return wins; } void played(){ games = games + 1; } double getGames(){ return games; } double getLosses(){ return losses; } double getWinsAdj(){ return winsAdj; } void setWinsAdj(double w){ winsAdj = w; } void addOpponent(string team){ int found=0; for(int i=0;i getOpponents(){ return opponents; } void setName(string n){ name = n; } string getName(){ return name; } string name; double wins; double winsAdj; double losses; double rank; double games; vector opponents; }; double rank(double Nwins, double Ntotal){ return ((1+Nwins)/(2+Ntotal)); } double winsAdjusted(double wins,double losses, double sumRank){ return ((wins-losses)/2 + sumRank); } double sumRank(map map, string name){ double sum=0; vector opps = map[name].getOpponents(); for(int i=0;i tMap; cin >> numTeams; string teams[numTeams]; for(int i=0;i> teams[i]; tMap[teams[i]].setName(teams[i]); } vector final; while(cin>>team1){ // cin >> team1; if(cin.eof()) break; cin >> score1 >> team2 >> score2; tMap[team1].addOpponent(team2); tMap[team1].played(); tMap[team2].addOpponent(team1); tMap[team2].played(); if(score1>score2){ tMap[team1].win(); tMap[team2].lose(); } else if(score1=0;i--){ cout << numTeams-i << ". " << final[i].getName() << "\t" << fixed << setprecision(4) << final[i].getRank() << endl; } }