혼자 고민해보기_ 개발/코딩테스트
한 번만 등장한 문자
nuri-story
2023. 10. 9. 11:51
https://school.programmers.co.kr/learn/courses/30/lessons/120896
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
정답코드
function solution(s) {
return [...s].filter(c => s.split(c).length === 2).join('')
}
메소드 설명
let s = 'abcdefg'
s.split('')
(7) ['a', 'b', 'c', 'd', 'e', 'f', 'g']
console.log([...s])
instrument.js:108 (7) ['a', 'b', 'c', 'd', 'e', 'f', 'g']
s.split('a')
(2) ['', 'bcdefg']
s.split('g')
(2) ['abcdef', '']
1. split으로 나눌때 한 번만 등장한 문자는 ['', 'bcdefg'] 결과값이 나옴 즉 2개일때만 필터링하면됨
let s = 'abcabcadc'
undefined
s.split('d')
(2) ['abcabca', 'c']
s.split('c')
(4) ['ab', 'ab', 'ad', '']
2. 순서대로 정렬해야 값이 나옴
[...s].filter(c => s.split(c).length === 2).join('')
'abdc'
[...s].filter(c => s.split(c).length === 2).sort().join('')
'abcd'