반응형

프로그래머스 해시 5

프로그래머스 베스트앨범 (파이썬)

Level 3 해시 문제 : https://programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 제출 코드 def solution(genres, plays): answer = [] dic = {} #장르별로 플레이와 인덱스 추가 for i in range(len(genres)): # 딕셔너리도 append 가능 if genres[i] in dic: dic[genres[i]].append([plays[i], i]) else: d..

ProblemSolving/Hash 2022.05.05

프로그래머스 위장 (파이썬)

Level 2 해시 문제 : https://programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr 제출 코드 def solution(clothes): answer = 1 dic = {category : 0 for name, category in clothes} for name, category in clothes: dic[category] += 1 if len(dic) == 1: print(dic[category]) answer = dic[category] return answer for k in dic.keys(): answer *= (dic[k]+1) answer -= 1 return answer 정리 및 복습 ..

ProblemSolving/Hash 2022.05.03

프로그래머스 전화번호 목록 (파이썬)

Level 2 해시 문제 : https://programmers.co.kr/learn/courses/30/lessons/42577 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr 제출 코드 def solution(phone_book): answer = True phone_book.sort(key = lambda x : (x, len)) for i in range(len(phone_book)-1): left = phone_book[i] right = phone_book[i+1] if left == right..

ProblemSolving/Hash 2022.05.03

프로그래머스 완주하지 못한 선수 (파이썬)

Level 1 해시 문제 : https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 시행착오 첫번째 코드는 동명이인을 해결하지 못했습니다. 그래서 딕셔너리와 count를 이용했으나 테스트 케이스는 맞았지만 효율성 문제에서 틀렸습니다. 따로 남겨놓지 못해서 코드가 없습니다. 정답 코드 정렬해서 이름이 다른 것이 나오면 바로 출력하게 만들었습니다. 1명만 완주를 못했으니까 정렬로 빠르게 해결이 가능했..

ProblemSolving/Hash 2022.05.03

프로그래머스 신고 결과 받기 (파이썬)

Level 1 해시 문제 : https://programmers.co.kr/learn/courses/30/lessons/92334 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 접근 방법 이름을 key, 번호를 value로 하여 딕셔너리로 저장 각 ID 별로 2차원 배열을 생성 > reportList[i][j] i인덱스가 j인덱스를 신고를 했으면 1 안했으면 0 reportList를 같은 열끼리 더한 것이, k를 넘으면 reportList[i][j]가 1인 것만 answer[i] 1증가 def fin..

ProblemSolving/Hash 2022.05.03
1
반응형