프로그래머스 | 체육복_JS
2107 단어 programmersalgorithmalgorithm
난이도 : Level. 1
언어 : Javascript
출제 내역 : 탐욕법
❓ Question
체육복을 잃어버린 사람과 여벌로 가져온 사람이 있다.
양 옆에 있는 사람만 빌려줄 수 있는데,
그렇다면 체육복을 입고 체육시간에 나간 사람의 수를 구해보자
📝 My Solution
전체 풀이 코드 👈🏻 클릭시 Github로 이동
function solution(n, lost, reserve) {
var answer = 0;
let newArr = [];
for (let i = 0; i<reserve.length; i++) {
if (reserve.indexOf(lost[i]) > -1) {
let minusNum = lost[i]
lost.splice(lost.indexOf(minusNum),1);
reserve.splice(reserve.indexOf(minusNum),1);
}
}
우선 여벌로 가져온 사람이 하나를 잃어버린 경우가 있으니
그 부분을 먼저 제외해 줍니다.
잃어버린 사람과 여벌로 가져온 사람의 배열에서 해당 숫자를 제거합니다.
for (let i = 1; i<=n; i++) {
newArr.push(i)
if (lost.indexOf(i) > -1) {
newArr.pop()
if (reserve.indexOf(i) > -1) {
newArr.push(i);
reserve.splice(reserve.indexOf(i),1)
} else if (reserve.indexOf(i-1) > -1) {
newArr.push(i);
reserve.splice(reserve.indexOf(i-1),1)
} else if (reserve.indexOf(i+1) > -1) {
newArr.push(i);
reserve.splice(reserve.indexOf(i+1),1)
}
}
}
return answer=newArr.length;
}
그 다음, 새 배열에 학생 번호를 먼저 넣어주고,
잃어버린 사람인지 체크하고, 그 앞뒤 번호에 여벌로 가져온 사람이 있는지 체크해
번호를 배열에 채워준 뒤, 해당 배열의 길이를 결과로 도출합니다.
결과
Author And Source
이 문제에 관하여(프로그래머스 | 체육복_JS), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sstaar91/Algorithm-Programmers-Gymsuit저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)