일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 보석 쇼핑
- 베스트엘범
- 1789번
- 키패드 누르기
- python
- 12869번
- 프로그래머스
- 12865번
- 백준 알고리즘
- 거울 설치
- 1038번
- 19238번
- 스타트 택시
- 14499번
- 15686번
- 수식 최대화
- 17144번
- 2020 카카오 인턴십
- 미세먼지 안녕!
- 감소하는 수
- QueryDSL 기초
- 9095번
- SW ExpertAcademy
- 경주로 건설
- 어른 상어
- 파이썬
- SW Expert Academy
- HTML 기초
- 빛의 경로 사이클
- 16234번
- Today
- Total
목록전체 글 (95)
보물창고 블로그
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/kYFXN/btrtajxhHaP/HUNHgodfszbRSOskudMM5K/img.png)
문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 파이썬 자료구조인 Dictionary를 사용하여 장르별 재생 횟수와 장르내에서 각 노래별 재생 횟수를 Dictionary key, value 값으로 저장하여 가장 재생 횟수가 많은 장르 순서로, 장르 내에서는 재생 횟수가 높은 노래 순서로 2개 혹은 1개씩 answer 리스트에 담아서 답을 구합니다. 소스코드는 아래와 같습니다. def soluti..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9EptI/btrtak31lQo/rXGip4HR0SUkhCrhFmAMJK/img.png)
문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr 경우의 수 문제입니다. 각 부위별로 개수를 구해서 (개수+1)값을 전부 곱한뒤 1을 빼면 답입니다. 1을 빼는 이유는 옷을 하나도 걸치지 않을 경우를 빼야하기 때문입니다. 소스코드는 아래와 같습니다. def solution(clothes): if len(clothes) == 0: return 0 from collections import defaultdict part = defaultdict(int) for c in clothes: part[c[1]] += 1 answer = 1 for p in part: answer *= part[p..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Eg7sx/btrs7AUit54/I7n0vkixK1LOBqJly0Ikq1/img.png)
문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42577 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr 이 문제는 정렬(sort)을 해야 효율적으로 풀 수 있습니다. 처음에는 시간 초과 때문에 통과를 못하였습니다. O(N^2)으로 풀어서 통과를 하지 못하였습니다. 하지만 sort를 통해 O(N)으로 풀 수 있었습니다. 문자열 순서로 오름차순으로 정렬을 한 뒤에 자신과 자신의 바로 다음 전화번호만을 비교하면 충분합니다. 아래는 소스코드입니다. def..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cA9Mhx/btrs5939RV2/X6JsxjLKarepRpL0RATQgk/img.png)
문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 해시(HASH) 관련 문제입니다. 저는 파이썬 자료구조인 Dictionary를 사용하여 풀이하였습니다. 풀이 코드는 아래와 같습니다. def solution(participant, completion): answer = '' #참가자와 숫자를 key,value로 담을 Dictionary 선언 partdict = {} for p i..