본문 바로가기
개발 노트/백준, 프로그래머스 풀이

[백준 11478/javascript] 서로 다른 부분 문자열의 개수

by tokkiC 2022. 8. 20.

부분 문자열을 이중 for 문을 돌며 인덱스 번호로  substr 이나 slice 등으로 구해서

set에 추가하여 중복을 제거, set의 요소 수를 size로 구하여 출력하면 되는 문제이다

https://www.acmicpc.net/problem/11478

 

11478번: 서로 다른 부분 문자열의 개수

첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000 이하이다.

www.acmicpc.net

let input;

const readline = require("readline").createInterface({
  input: process.stdin,
  output: process.stdout,
});

readline.on("line", (line) => {
  input = line;
});

readline.on("close", () => {
  solution(input);
  process.exit();
});

const solution = (input) => {
  let set = new Set();
  let inplen = input.length;
  for (let i = 0; i < inplen; i++) {
    for (let j = 1; j <= inplen - i; j++) {
      set.add(input.substr(i, j));
    }
  }
  let ans = set.size;
  console.log(ans);
};

댓글