Aizu Online Judge(AOJ)の過去問から、その提出コードの解答例です。
・問題 "You Are the Judge"
https://onlinejudge.u-aizu.ac.jp/problems/2400
・審判は君だ!
僕が作成、提出したコードは、以下のとおりです。
・Aizu Online Judge in C++ #Volume24 - 2400 : You Are the Judge
/* Aizu Online Judge in C++ #Volume24 - 2400 : You Are the Judge https://onlinejudge.u-aizu.ac.jp/problems/2400 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; using ll=long long; int main(void){ ll t,p,r; while(cin>>t>>p>>r,t){ pair<pair<ll,ll>,ll> a[50]; ll v[50][10]={0}; for(ll i=0;i<50;i++){ a[i].second=i+1; } while(r--){ ll tid,pid,tim; string s; cin>>tid>>pid>>tim>>s; if(s[0]=='W'){ v[tid-1][pid-1]++; }else{ a[tid-1].first.first--; a[tid-1].first.second+=1200*v[tid-1][pid-1]+tim; } } sort(a,a+t); for(ll i=0;i<t;i++){ cout<<a[i].second<<" "<<-a[i].first.first<<" "<<a[i].first.second<<"\n"; } } return 0; }
設問の出典は、プログラミング問題のオンライン採点システム「Aizu Online Judge(AOJ)」です。
http://judge.u-aizu.ac.jp/onlinejudge/