#include #include #include #include using namespace std; struct Cad { int race; string name; }; bool valid(const string& vote, const vector& rgc, int r) { vector voted(r, false); for (int z=0; z& rgvote) { for (int z=0; z& rgc, const vector& rgvote, int r) { vector< vector > winner( r ); vector< int > highest( r , -1 ); for (int z=0; zhighest[rgc[z].race-1]) { winner[rgc[z].race-1].clear(); winner[rgc[z].race-1].push_back(z); highest[rgc[z].race-1]=rgvote[z]; } else if (rgvote[z]==highest[rgc[z].race-1]) { winner[rgc[z].race-1].push_back(z); } } vector rgwinner(rgc.size(), false); for (int i=0; i>K; for (int k=1; k<=K; ++k) { cout<<"Data Set "<>n>>r>>v; vector< Cad > rgc(n); for (int i=0; i>rgc[i].race; ifile.ignore(1); getline(ifile, rgc[i].name); } vector rgvote(n,0); for (int i=0; i