언젠가는 펼쳐 볼 아카이브

[BOJ] 3052번 - 나머지 본문

IT/Baekjoon Oline Judge

[BOJ] 3052번 - 나머지

개발자희망생고롸파덕 2023. 8. 16. 20:05

사용언어 : javascript - node.js

 

#제출 코드

const fs = require('fs');
const filePath = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
const input = fs
  .readFileSync(filePath)
  .toString()
  .trim()
  .split('\n')
  .map((item) => +item);

solution(input);

function solution(list) {
  let remainList = [];

  for (let i = 0; i < list.length; i++) {
    let remainNum = list[i] % 42;
    if (remainList.length === 0) {
      remainList.push(remainNum);
    } else if (!remainList.includes(remainNum)) {
      remainList.push(remainNum);
    }
  }

  console.log(remainList.length);
}

 

더 짧은 코드로 작성할 수 없나.. 하고 검색하던 중에 엄청난 코드를 발견했다.

 

 

## 발견한 코드 

const input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');
	
const count = new Set(input.map(x => x % 42)).size;
    
console.log(count);

출처 : https://gurtn.tistory.com/37

 

아 맞다 set이...있었지..

저 긴 코드를 한줄로 줄여버렸다.

잊지말자 set... 

'IT > Baekjoon Oline Judge' 카테고리의 다른 글

[BOJ] 2743번 - 단어 길이 재기  (0) 2023.08.17
[BOJ] 27866번 - 문자와 문자열  (0) 2023.08.17
[BOJ] 5597번 - 과제 안 내신 분..?  (0) 2023.08.16
[BOJ] 10813번 - 공 바꾸기  (0) 2023.08.16
[BOJ] 10810번 - 공 넣기  (0) 2023.08.16