Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- naver movie review
- Classification Task
- 품사태깅
- 인공지능
- 석사
- 대학원
- 전처리
- 수기
- 우울증
- 자연어처리
- sentiment analysis
- Word2Vec
- pytorch
- NLP
- CUDA
- word embedding
Archives
- Today
- Total
슬기로운 연구생활
[프로그래머스] 체육복 본문
* 문제
programmers.co.kr/learn/courses/30/lessons/42862
코딩테스트 연습 - 체육복
점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번
programmers.co.kr
* 문제 풀이
- 첫째, lost와 reserve에 중복되는 요소를 제거한다.
- 둘째, lost와 reserve를 정렬한다.
- 셋째, 여벌의 체육복을 가지고 있는 학생의 좌측부터 채워나간다.
* 생각
- 아이디어는 간단한데 실수를 많이 했다.
- set을 사용해 파이썬 리스트에 있는 요소 중 중복 값을 제거하는 방법을 알게되었다.
* 코드
def solution(n, lost, reserve):
temp_lost = list(set(lost) - set(reserve))
temp_reserve = list(set(reserve) - set(lost))
lost = temp_lost
reserve = temp_reserve
lost.sort()
reserve.sort()
for i in range(0, len(reserve)):
if reserve[i] - 1 in lost:
lost.remove(reserve[i] - 1)
pass
elif reserve[i] + 1 in lost:
lost.remove(reserve[i] + 1)
pass
if len(lost) == 0:
break
answer = n - len(lost)
return answer
'슬기로운 코테 생활' 카테고리의 다른 글
[프로그래머스] 2016년 (0) | 2020.10.29 |
---|---|
[프로그래머스] 가운데 글자 가져오기 (0) | 2020.10.25 |
[프로그래머스] K번째수 (0) | 2020.10.23 |
[프로그래머스] 모의고사 (0) | 2020.10.20 |
[프로그래머스] 완주하지 못한 선수 (0) | 2020.10.20 |
Comments