문제 링크
https://www.acmicpc.net/problem/1543
풀이
const [doc, word] = require("fs").readFileSync("dev/stdin").toString().trim().split("\n");
let idx = 0;
let count = 0;
while (idx < doc.length) {
const newIdx = doc.slice(idx).search(word);
if (newIdx >= 0) {
count++;
idx += newIdx + word.length;
} else break;
}
console.log(count);
문서 내에서 첫 번째 주어진 단어를 찾고 count를 증가시킨다. 그리고 그 단어 바로 다음 내용부터 같은 과정을 반복한다. 만약 주어진 단어가 더 이상 없으면 반복을 종료한다.
String.prototype.search는 찾고자 하는 문자열이 존재하지 않으면 -1을 반환하므로, newIdx가 0 이상이면 주어진 단어가 존재한다.
'연습장 > 백준(BOJ) 문제풀이' 카테고리의 다른 글
[백준 1015] 수열 정렬 with Node.js (0) | 2021.05.17 |
---|---|
[백준 1676] 팩토리얼 0의 개수 with Python (0) | 2021.05.17 |
[백준 1654] 랜선 자르기 with Python (0) | 2021.05.15 |
[백준 1302] 베스트셀러 with Node.js (0) | 2021.05.15 |
[백준 15652] N과 M (4) with Python (0) | 2021.05.12 |