프로그래머스 풀이/level0
[Programmers] level 0) 문제 '특정 문자 제거하기' 풀이
진기명기
2023. 2. 24. 19:41
🫠 Programmers (level 0)
👉🏻 문제 10번 (특정 문자 제거하기) : 배열 my_string에서 letter값을 제거하기
function solution(my_string, letter){
// indexof 풀이로 할 경우, 대문자 B가 한개만 삭제됨
// indexof를 이용해서 letter이 몇번째 자리에 있는지 구하기
let res = my_string.indexOf(letter)
// 배열로 변경해주기
let arr = my_string.split('')
// splice를 이용해서 letter 요소 삭제하기
arr.splice(res, 1)
// 다시 문자열로 바꿔주기
return arr.join('')
}
let str = "abcdef"
let str2 ="BCBdbe"
console.log(solution(str, "f")) // abcde
console.log(solution(str2, "B")) // CBdbe
✅ indexof를 이용해서 문제를 풀 경우, str2의 B를 제거하는데 B 한 개만 제거가 되는 문제가 발생했다.
function solution(my_string, letter){
// 아래 풀이로 할 경우 (9/10)점
// split사용해서 배열로 변경
let arr = my_string.split('')
arr.map((item,index) => {
if(item === letter){
arr.splice(index, 1)
}
})
return arr.join('')
}
let str = "abcdef"
let str2 ="BCBdbe"
console.log(solution(str, "f")) // abcde
console.log(solution(str2, "B")) // Cdbe
🫠 값은 원하는대로 letter 값이 배열에서 제거되었는데, -1점을 받았다. 원인을 찾지 못했다.. 대체 왜일까..