영어 끝말잇기 https://programmers.co.kr/learn/courses/30/lessons/12981
같은 단어를 2회 이상 말하거나, 영어가 이어지지 않으면 실패합니다.
진행된 횟수를 세어 몇 round, 몇 번째인지 계산했습니다.
function solution(n, words) {
let temp = 0;
const stack = [];
let edgeStr = words[0][words[0].length - 1];
let firstStr = "";
stack[words[0]] = 1;
for (let i = 1; i < words.length; i++) {
firstStr = words[i][0];
if (firstStr !== edgeStr) {
temp = i + 1;
break;
}
stack[words[i]] = (stack[words[i]] | 0) + 1;
if (stack[words[i]] === 2) {
temp = i + 1;
break;
}
edgeStr = words[i][words[i].length - 1];
}
const index = temp % n === 0 ? temp / n : parseInt(temp / n) + 1;
const round = temp % n === 0 ? n : temp % n;
return temp === 0 ? [0, 0] : [round, index];
}