- 강의 질문
- 개발/데이터
Ch 01. > 07강 > "단어의 개수" > 문제풀이 오류 제보합니다.
2025.10.23 15:44 작성
강의자료에 제공된 풀이
let fs = require("fs");
let input = fs.readFileSync('/dev/stdin').toString().split('\n');
let data = input[0].trim().split(" ");
if(data == ""){
console.log(0);
}else{
console.log(data.length);
}문제
if(data == "")
이 조건문은 빈 문자열이 주어졌다면 단어의 개수가 0개라고 return하기 위함입니다.
하지만 .split()이 반환하는 것은 배열이기 때문에 if(data == "") 조건은 항상 false가 됩니다.
해결
빈 문자열이 주어졌는지는 split을 사용하기 전에 확인해야합니다.
따라서 아래와 같이 수정해야 올바른 풀이가 됩니다.
let fs = require("fs");
let data = fs.readFileSync('/dev/stdin').toString().trim();
let input = data.split(' ');
if(data == ""){
console.log(0);
}else{
console.log(input.length);
}