[백준 | Javascript] 10871

박기영·2022년 5월 17일
0

백준

목록 보기
31/127

반복문 11단계
10871번. X보다 작은 수

문제

정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000)
둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.

출력

X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다.

예제 입출력

예제 입력

10 5
1 10 4 9 2 3 8 5 7 6

예제 출력

1 4 2 3

solution

const fs = require('fs');
const inputData = fs.readFileSync('/dev/stdin').toString().split('\n');

const [iter, pivot] = inputData[0].split(' ').map(Number);

const num = inputData[1].split(' ').map(Number);

let newNum = [];

for(let i = 0; i < iter; i++){
	if(num[i] < pivot){
    	newNum.push(num[i]);
    }
}

console.log(newNum.join(' '));

해설

입력 데이터는 줄 바꿈을 기준으로 한번 각 줄 기준으로 한 번씩 파싱을 해줘야한다.
첫 줄의 첫 번째 숫자는 반복 횟수로, 두 번째 숫자는 조건의 기준으로 사용했다.
둘째 줄의 원소들은 기준 숫자와 대소 비교를 해서 작은 것만 새로 만든 배열에 push()했다.
마지막으로 배열 원소들을 한 줄에 띄어쓰기로 출력하기 위해 join(' ')을 해줬다.

profile
나를 믿는 사람들을, 실망시키지 않도록

0개의 댓글