🤯 코딩테스트/Javscript

[자바스크립트 알고리즘 문제풀이(코딩테스트 대비)] Section 01 - 중복 단어 제거

kangkibong 2022. 1. 10. 13:32

※ 문제

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에 할당한다.


해당 내용은 김태원님의 자바스크립트 알고리즘 문제풀이 강의를 듣고 작성한 글입니다.