#include <string>
#include <vector>
#include <iostream>
#include <map>
using namespace std;
map<string, int> m;
vector<int> solution(int n, vector<string> words) {
vector<int> answer;
int pnum = 0; // 사람 넘버 0부터 세기
int turn = 1; // 사람들 1번쨰 턴부터 세기
for(int i = 0; i < words.size(); i++){
m[words[i]]++; // word가 나온 수 세기
// 같은 단어 말해서 탈락
if(m[words[i]] > 1){
answer.push_back(pnum + 1); // 0부터 시작이니까
answer.push_back(turn);
break;
}
// 다른 단어 말해서 탈락
if(i > 0 && (words[i-1][words[i-1].size()-1] != words[i][0])){
answer.push_back(pnum + 1); // 0부터 시작이니까
answer.push_back(turn);
break;
}
pnum = (pnum + 1) % n;
// 한 바퀴 돈 경우
if(pnum == 0){
turn++; // 차례 세기
}
}
if(answer.empty()){
answer.push_back(0);
answer.push_back(0);
}
return answer;
}
if(i > 0 && (words[i-1][words[i-1].size()-1] != words[i][0])){}
굉장히 비효율적으로 코드를 짰다... string도 그냥 벡터처러
words[i-1].front(), words[i].back() 이렇게 접근할 수 있었음... 이런
이 분이 진짜 코드 효율적이고 깔끔하게 잘 짜신듯.