문제
두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다.
수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오.
풀이
const readFileSyncAddress = '/dev/stdin';
const fs = require('fs');
let [...input] = fs.readFileSync(readFileSyncAddress).toString().trim().split(/\n/g).map(Number)
const B = 42;
let arr = [];
for(let i = 0; i < input.length; i++){
let A = input[i];
arr.push(A%B);
}
let newArr = [...new Set(arr)];
console.log(newArr.length);
- set 메소드를 활용해 중복 값을 제거하고, 그 길이를 출력했다.
'Algorithm & 자료구조 > 알고리즘 w.JavaScript' 카테고리의 다른 글
[알고리즘] 백준 8958번: OX퀴즈 W_node.js (0) | 2022.04.28 |
---|---|
[알고리즘] 백준 1546번: 평균 W_node.js (0) | 2022.04.27 |
[알고리즘] 백준 2577번: 숫자의 개수 W_node.js (0) | 2022.04.27 |
[알고리즘] 백준 2439번: 별찍기-2 W_node.js (0) | 2022.04.25 |
[알고리즘] 백준 1110번: 더하기 사이클 W_node.js (0) | 2022.04.25 |