きままにものづくり

日々の気付いたことなんかを書いてます。

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);
}