※ 문제
N개의 문자열이 입력되면 중복된 문자열은 제거하고 출력하는 프로그램을 작성하세요. 출력하는 문자열은 원래의 입력순서를 유지합니다.
▣ 입력설명
첫 줄에 자연수 N이 주어진다.(3<=N<=30) 두 번째 줄부터 N개의 문자열이 주어진다. 문자열의 길이는 100을 넘지 않습니다.
▣ 출력설명
첫 줄부터 중복이 제거된 문자열을 차례로 출력한다.
▣ 입력예제 1
5
good
time
good
time
student
▣ 출력예제 1
good
time
student
※ 코드
<html>
<head>
<meta charset="UTF-8">
<title>출력결과</title>
</head>
<body>
<script>
function solution(s) {
let answer;
answer = s.filter(function (element, index) {
return s.indexOf(element) === index;
})
return answer;
}
let str = ["good", "time", "good", "time", "student"];
console.log(solution(str));
</script>
</body>
</html>
※ 설명
입력값이 배열이므로 filter() 내장함수를 사용하여 각 item의 idexOf()를 구하여 index와 일치할 경우 중복되지 않는 item이므로 s.indexOf(element) === index값을 return한 후 answer에 할당한다.
해당 내용은 김태원님의 자바스크립트 알고리즘 문제풀이 강의를 듣고 작성한 글입니다.
'🤯 코딩테스트 > Javscript' 카테고리의 다른 글
[자바스크립트 알고리즘 문제풀이(코딩테스트 대비)] Section 02 - 보이는 학생 (0) | 2022.01.10 |
---|---|
[자바스크립트 알고리즘 문제풀이(코딩테스트 대비)] Section 02 - 큰 수 출력하기 (0) | 2022.01.10 |
[자바스크립트 알고리즘 문제풀이(코딩테스트 대비)] Section 01 - 중복 문자 제거 (0) | 2022.01.10 |
[자바스크립트 알고리즘 문제풀이(코딩테스트 대비)] Section 01 - 가운데 문자 출력 (0) | 2022.01.10 |
[자바스크립트 알고리즘 문제풀이(코딩테스트 대비)] Section 01 - 가장 긴 문자열 (0) | 2022.01.08 |