알고리즘문제
프로그래머스 > 영어 끝말잇기
단점이없어지고싶은개발자
2022. 10. 26. 20:02
반응형
function solution(n, words) {
let keyword = words[0];
let count = 1;
for (let i = 1; i < words.length; i++) {
const player = i % n + 1;
//for문을 돌면서 player수를 계산해준다.
if (keyword.slice(-1) !== words[i][0]) {
//처음 단어의 끝과 그 다음 단어의 첫 번째가 맞는지 확인하는 로직
return [player, count];
}
if (words.findIndex(word => words[i] === word) !== i) {
//findIndex로 중복된 단어가 있는지 찾아준다.
return [player, count];
}
keyword = words[i];
//위에 로직이 다 해당하지 않으면 해당 문자열을 keyword로 바꾼다.
if (player === n) count++;
//player는 순차적으로 돌고 n일 때 몇 번째로 도는지 확인하기위해 count를 더해준다.
}
return [0, 0];
}
반응형