문제

#include <string>
#include <vector>
#include <unordered_map>
using namespace std;

vector<int> solution(int n, vector<string> words) {
	vector<int> answer;
	unordered_map<string, int> umap;
	int round = 0, player = 0;
	int size = words.size();
	int i = 1;

	umap[words[0]]++;
	while (i < size) {
		if (words[i].front() == words[i - 1].back()) {
			umap[words[i]]++;
			if (umap[words[i]] > 1) break; // 이전에 등장한 단어인 경우
		}
		else break; // 앞사람이 말한 단어의 마지막 문자로 시작하는 단어를 말하지 않은 경우
		i++;
	}

	if (i >= size) { // 주어진 단어들로 탈락자가 생기지 않는 경우
		round = 0;
		player = 0;
	}
	else {
		round = i / n + 1;
		player = i % n + 1;
	}
	answer.push_back(player);
	answer.push_back(round);
	return answer;
}