일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- Django
- depends_on
- 프로그래머스
- docker-compose
- depends
- S3
- TypeError: 'property' object is not iterable
- EC2
- javascript
- classproperty
- OperationalError
- DB
- 2차 코딩테스트
- AWS
- AWS S3
- 갓재석
- 우아한 테크코스 2차 합격
- springboot 3.0.0
- 재귀함수가 뭔가요
- python all testcode
- python
- github
- METACLASS
- 우아한테크코스 2차
- github skyline
- classmethod
- Spring
- MySQL server on 'db' (115)
- 코딩테스트
- docker
Archives
hanbin.dev
[코딩테스트] 프로그래머스 체육복 with javascript 본문
문제 풀이 코드
function solution(n, lost, reserve) {
var answer = 0;
var duplicatedStudent = []
for (var i = 0; i < lost.length; i++){
if (reserve.includes(lost[i])){
duplicatedStudent.push(lost[i]); // #1
}
}
for (var student of duplicatedStudent){
var reserveIdx = reserve.indexOf(student); // #2
reserve.splice(reserveIdx,1);
var lostIdx = lost.indexOf(student);
lost.splice(lostIdx,1);
}
answer = n - lost.length; // #3
for (var lostedStudent of lost){
var canReserve = false;
for (var i of [-1,1]){
if (reserve.includes(lostedStudent + i)){ // #4
const idx = reserve.indexOf(lostedStudent + i);
reserve.splice(idx,1);
answer += 1;
break;
}
}
}
return answer;
}
#1
체육복이 도난 당했으면서, 여분의 체육복이 있는 사람 리스트를 저장해 둔다.
#2
미리 저장해둔 체육복이 도난 당했으면서, 여분의 체육복이 있는 사람을 lost, reserve 에서 제거한다.
#3
체육 수업을 들을 수 있는 사람 = 총 인원 - 체육복 잃어버린 사람
으로 만들어두고 친구에게 빌린 사람을 하나씩 추가한다.
#4
앞 번호 뒷 번호를 검사하면서 여분의 체육복이 있는 사람에게 체육복을 빌린다.
'코딩테스트' 카테고리의 다른 글
[코딩테스트] 프로그래머스 프린터 with Python (0) | 2021.05.10 |
---|---|
[코딩테스트] 프로그래머스 다리를 지나는 트럭 with Python (0) | 2021.05.09 |
[코딩테스트] 프로그래머스 기능개발 with javascript (0) | 2021.05.07 |
[코딩테스트] 프로그래머스 베스트앨범 with javascript (0) | 2021.05.06 |
[코딩테스트] 프로그래머스 위장 with javascript (0) | 2021.05.06 |