Yandex.Algorithm2013QualificationRound-A:AncientBascketball
Yandex.Algorithm2013のA問題。
スコアを保存する用の配列を作って、あとはチームの配列をキーにしてシミュレーションしていくだけ。
#include <vector> #include <iostream> #include <stdio.h> using namespace std; void solve(int n,int L,vector<int> &team,vector<int> &dist) { vector<int> score(3); score[1] = 0; score[2] = 0; for (int i=0; i<team.size(); ++i) { if (dist[i] > L) { score[team[i]] += 3; } else if (dist[i] >= 0) { score[team[i]] += 2; } else { ++score[team[i]]; } } printf("%d:%d\n",score[1],score[2]); } int main(void) { int n,L; scanf("%d %d",&n,&L); vector<int> team(n),dist(n); for (int i=0; i<n; ++i) { scanf("%d %d",&team[i],&dist[i]); } solve(n,L,team,dist); }