0124-League Match Score Sheet
http://rose.u-aizu.ac.jp/onlinejudge/ProblemSet/description.jsp?id=0124&lang=jp
構造体のソートをstable_sortを使ってやろうとしたが、
比較演算子のオーバーライド辺りの情報を調べるのに手間取った。
考え方
各チームの得点を元に安定ソート
実装(C++/インクルード省略)
using namespace std; struct team{ string name; int point; }; bool operator==(const team& left,const team& right) { return left.point==right.point; } bool operator<(const team& left,const team& right) { return left.point>right.point; } bool operator>(const team& left,const team& right) { return left.point<right.point; } int main() { int n,w,l,d=-1; while(1){ cin >> n; if(n==0) return 0; if(d!=-1) cout << endl; team data[n]; for(int i=0;i<n;i++){ cin >> data[i].name >> w >> l >> d; data[i].point=w*3+d; } std::stable_sort(data,data+n); for(int i=0;i<n;i++){ cout << data[i].name << "," << data[i].point << endl; } } return 0; }