최대 5명씩 탑승가능한 놀이기구를 타기 위해 줄을 서있는 사람들의 이름이 담긴 문자열 리스트 names
가 주어질 때, 앞에서 부터 5명씩 묶은 그룹의 가장 앞에 서있는 사람들의 이름을 담은 리스트를 return하도록 solution 함수를 완성해주세요. 마지막 그룹이 5명이 되지 않더라도 가장 앞에 있는 사람의 이름을 포함합니다.
names
의 길이 ≤ 30names
의 원소의 길이 ≤ 10names
의 원소는 영어 알파벳 소문자로만 이루어져 있습니다.names | result |
---|---|
["nami", "ahri", "jayce", "garen", "ivern", "vex", "jinx"] | ["nami", "vex"] |
function solution(names) {
let sliceArr = [];
for(let i = 0; i < names.length; i++){
if((i + 1) % 5 !== 0){
sliceArr.push(names[i]);
} else {
sliceArr.push(names[i]);
sliceArr.push("/");
}
}
let resultArr = [];
let tempArr = [];
for(let i = 0; i < sliceArr.length; i++){
if(sliceArr[i] !== "/"){
tempArr.push(sliceArr[i])
} else {
resultArr.push(tempArr);
tempArr = [];
}
}
if(tempArr.length !== 0){
resultArr.push(tempArr);
}
let finalResult = [];
for(let i = 0; i < resultArr.length; i++){
finalResult.push(resultArr[i][0]);
}
return finalResult;
}
뭔가 메소드를 잘 사용하면 엄청 간단하게 풀 수 있을 것 같은 느낌이 든다;