문제 이름 : 스킬트리
<<< 문제 내용 >>>
function solution(skill, skill_trees) {
let answer = 0;
let regex = new RegExp(`[^${skill}]`, 'g');
return skill_trees.map((el)=>el.replace(regex, ''))
.filter((el)=> skill.substring(0, el.length)=== el).length;
}
* 처음 문제를 보고 백트래킹으로 풀수있을거 같다는 생각에 시도하였다가 skill이 C,B만있을때도 가능해야 한다는 것을 간과했다.
또 스킬이 26개짜리일 때, 시간이 어마어마하게 들어간다.
따라서 정규식으로 풀어보자 생각했는데.. 막혀버렸다..
검색끝에 skill이 아닌 값들을 ''로 replace하는 기가막힌 방법이 있었다.
그 이후는 filter를 이용하여 스킬트리대로 잘라주고 같은지 확인해주면 된다.
이렇게 간단하게 풀수있다니ㅎㅎ 정규식에는 match, replace 등 많은 것들이 쓰이는데 생각을 좀 넓게해야겠다 ㅠㅠ..
도움이 되셨다면 공감 부탁드립니다.