#include #include int main(int n, char **ppc){ painit(n,ppc,"-i(filename=contrib.txt) -mode(int_mode=0)"); File file(*pa("-i"),File::readText); while(file.hasMoreLines()){ std::string name = file.readLine(); std::vector contr = tok(file.readLine()); ICLASSERT_RETURN_VAL(contr.size() == 5,-1); int ce = parse(tok(contr[0],":")[1]); // celbrech int mg = parse(tok(contr[1],":")[1]); // mgoettin int rh = parse(tok(contr[2],":")[1]); // rhaschke int aj = parse(tok(contr[3],":")[1]); // ajustus int fr = parse(tok(contr[4],":")[1]); // freinhar int cg = parse(tok(contr[5],":")[1]); // cgroszew int ew = parse(tok(contr[6],":")[1]); // eweitnau int dd = parse(tok(contr[7],":")[1]); // ddornbus if(pa("-mode").as() == 0){ std::cout << name << " " << ce << " " << mg << " " << rh << " " << aj << " " << fr << cg << " " << ew << " " << dd << std::endl; }else{ int sum = ce + mg + rh + aj + fr + cg + ew + dd; static std::string names[8] = { "celbrech", "mgoettin", "rhaschke", "ajustus", "freinhar", "cgroszew","eweitnau","ddornbus" }; int cs[8] = {ce, mg, rh, aj, fr, cg, ew, dd}; std::cout << name << " "; if(sum >= 3){ for(int i=0;i<8;++i){ if(cs[i] >= 3) std::cout << names[i] << " "; } }else{ int max = *max_element(cs,cs+8); for(int i=0;i<8;++i){ if(cs[i] == max) std::cout << names[i] << " "; } } } std::cout << std::endl; } }