sm 기술 블로그

84. 10815(숫자 카드) 본문

문제/백준_자바스크립트

84. 10815(숫자 카드)

sm_hope 2022. 6. 19. 08:54
let input = require('fs').readFileSync(0).toString().trim().split("\n");

let haveCard = input[1].split(" ").map(Number);
let compareCard = input[3].split(" ").map(Number);

let cardDic = new Object();
let result = "";

for(let i = 0 ; i<haveCard.length;i++){
  cardDic[haveCard[i]] = 1;
}

for(let val of compareCard){
    if(cardDic[val] ===1) {
      result += "1" + " ";
      continue;
  }    
    result += "0" + " ";
}

console.log(result)

문제요약

상근이가 가지고 있는 카드의 숫자와 제시된 카드의 숫자가 같은지 비교하시오.

설명

N(상근이가 가진 숫자카드)과 M(비교할 숫자카드)은 없어도 문제 없다.

 

문제에서 사용한 핵심 문법은 객체로, 상근이가 가지고 있는 숫자카드를 key 로 하고,  value는 1로 하여 객체에 저장하였다.

 

js에서는 객체의 키가 없다면 undefine을 발생시킨다.

따라서 파이썬과 달리 예외처리가 필요 없다.

 

https://smhope.tistory.com/238?category=1058421 

 

객체 선언 및 값 추가

객체 key와 value형태로 이루어진 배열이라고 생각하면된다. 선언방법 바로 값을 선언하는 방법 let A = {'a':1, 'b':2, 'c':3}; 비어있는 객체를 선언하는 방법 let B = new Object(); let B = {}; 객체 값 추가..

smhope.tistory.com

 

'문제 > 백준_자바스크립트' 카테고리의 다른 글

86. 1620(나는야 포켓몬 마스터 이다솜)  (0) 2022.06.19
85. 14425(문자열 집합)  (0) 2022.06.19
83. 18870 (좌표압축)  (0) 2022.06.18
82. 10814(나이순 정렬)  (0) 2022.06.17
81. 1181(단어정렬)  (0) 2022.06.17
Comments