캐또's coding

10871 - X보다 작은 수 - node.js 본문

기초 공부/백준 문제 풀이

10871 - X보다 작은 수 - node.js

JS_K_coding 2022. 8. 16. 11:03

문제

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

입력

첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000)

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

출력

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

예제 입력 1 복사

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

예제 출력 1 복사

1 4 2 3

출처

알고리즘 분류


N X

수열A

위와 같은 방식으로 입력이 들어온다. N개의 입력이므로 N번의 반복문을 돌리며 기준이 되는 X에 대해서 작은 수인지 비교해서 출력하면 된다. 즉, N번 반복하면서 수열 A 중에서 X보다 작은 수만 출력하기. 공백으로 입력받은 순서대로 출력해야한다.

const input = require("fs").readFileSync("/dev/stdin").toString().split("\n");
const mNums = input[0].split(" ").map(Number);
const A = input[1].split(" ").map(Number);
const [N, X] = mNums;
let result = [];
for (let i = 0; i < N; i++) {
  if (A[i] < X) {
    result.push(A[i]);
  }
}
console.log(result.join(" "));

한글로 메모한 그대로 코드를 작성해보았다. 우선 입력을 두 줄로 나누고 첫 번째 줄은 N과 X로, 두번째 줄은 수열 A가 되게 하였다. 다음으로 for문을 따라 N번 돌면서 A의 i번째마다 X와 비교하고 result라는 array에 추가했다 마지막으로 join을 이용해서 빈칸을 넣은 문자열로 완성해서 해결

'기초 공부 > 백준 문제 풀이' 카테고리의 다른 글

10951 - A + B - 4 - node.js  (0) 2022.08.16
10952 - A + B - 5 - node.js  (0) 2022.08.16
2439 - 별 찍기 - 2 - node.js  (0) 2022.08.15
2438 - 별 찍기 -1 - node.js  (0) 2022.08.15
11022 - A+B - 8 - node.js (30번째)  (0) 2022.08.15
Comments