프로그래머스 - 체육복(Greedy) [JS]

2023. 1. 13. 10:57·알고리즘(Algorithm)
728x90
반응형

풀이

function solution(n, lost, reserve) {
  let checkLost=lost.filter(i=>!reserve.includes(i)).sort()
  let checkReserve=reserve.filter(i=>!lost.includes(i)).sort()
  checkLost=checkLost.filter(i=>{
    let temp=checkReserve.find(j=>Math.abs(i-j)<=1)
    if(!temp) return true
    checkReserve=checkReserve.filter(k=>k!==temp)
  })
  return n-checkLost.length
}

lost와 reserve에 둘 다 있는 숫자를 먼저 제거후 정렬-> 체육복을 잃어버렸지만 여분을 가진 친구들

ex) solution(3, [1], [1])

 

체육복을 잃어버린 학생들의 배열 ( checkLost )의 값이 체육복 여분이 있는 학생들 ( checkReserve )의 값과 1차이가 난다면 체육복을 빌려줄수 있다. ( Math.abs -> 절댓값 )

 

filter 메서드 사용이유 -> 잃어버린 학생들이 체육복을 받으면 체육 수업을 들을  수 있으므로 checkLost 배열에서 제거

 

find 메서드를 통해 찾은 값이 없다면 filter 메서드 종료

체육복 여분을 빌려줬으므로 여분을 빌려준 학생은 배열에서 제거

    if(!temp) return true
    
    checkReserve=checkReserve.filter(k=>k!==temp)

 

728x90
반응형
저작자표시 (새창열림)

'알고리즘(Algorithm)' 카테고리의 다른 글

프로그래머스 - 키패드 누르기 [JS]  (0) 2023.01.16
프로그래머스 - 크레인 인형뽑기 게임 [JS]  (0) 2023.01.16
프로그래머스 - 다트게임 [JS]  (0) 2023.01.11
프로그래머스 - 비밀지도 [JS]  (0) 2023.01.10
프로그래머스 - 소수 만들기[JS]  (0) 2023.01.09
'알고리즘(Algorithm)' 카테고리의 다른 글
  • 프로그래머스 - 키패드 누르기 [JS]
  • 프로그래머스 - 크레인 인형뽑기 게임 [JS]
  • 프로그래머스 - 다트게임 [JS]
  • 프로그래머스 - 비밀지도 [JS]
Hun-bot
Hun-bot
IT를 중심으로 다양한 것
  • Hun-bot
    로봇이 만드는 눈사람
    Hun-bot
  • 전체
    오늘
    어제
    • All Article (128)
      • Programmers (6)
        • TIP (1)
        • SQL (2)
        • LV1 (1)
        • LV2 (2)
        • LV3 (0)
      • Baekjoon (31)
        • Bronze (10)
        • Silver (19)
        • Gold (2)
        • Platinum (0)
        • Diamond (0)
      • Leetcode (0)
        • Easy (0)
        • Medium (0)
        • Hard (0)
        • SQL (0)
      • 알고리즘(Algorithm) (42)
      • JavaScript (40)
      • Linux (7)
      • JSP (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      자바스크립트 #연습문제
      JSP #Vscode #톰켓 #Tomcat #Java #Web #jdk
      고득점 Kit
      Javascript
      async await #js #문법 #자바스크립트 #비동기
      JS #javascript #객체 #Object
      Programmers
      자바스크립트
      JS #JavaScript #프로그래머스 #카카오
      BaekJoon
      알고리즘
      알고리즘 #Algorithm
      SQL
      Python #알고리즘
      JS #프로그래머스 #숫자의표현 #알고리즘
      Vue #Vue.js #정리
      리눅스 #입문
      LeetCode #JS #Javascript #Algorithm
      JS #클래스
      티스토리챌린지
      c++
      JavaScript #Set #Collection
      리눅스
      Algorithm
      파이썬 #입력 #python #input
      프로그래머스 #자바스크립트 #JS
      JS #JavaScript #프로그래머스 #알고리즘
      JS #정규표현식
      프로그래머스
      오블완
    • 최근 댓글

    • hELLO· Designed By정상우.v4.10.3
    Hun-bot
    프로그래머스 - 체육복(Greedy) [JS]
    상단으로

    티스토리툴바

    티스토리툴바