전체 글
[Python] 딕셔너리 최댓값, 최솟값 구하기 / 최댓값을 가지는 key 구하기
파이썬 딕셔너리에서 최댓값을 구하는 방법입니다. max() 함수를 사용하면 됩니다. my_dict = {'a': 10, 'b': 5, 'c': 8}max_value = max(my_dict.values())print(max_value) # 출력: 10 최댓값을 가지는 key를 구하는 방법max() 함수의 key 매개변수를 사용하면 됩니다.(sort() 함수에서 key= 와 비슷합니다.)my_dict = {'a': 10, 'b': 5, 'c': 8}max_key = max(my_dict, key=my_dict.get)max_value = my_dict[max_key]print(max_key, max_value) # 출력: a 10 .get() 은 딕셔너리에서 특정 키에 해당하는 값을 반환하는..
![[프로그래머스] lv3 베스트앨범 / 파이썬, 고득점kit](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbtZh2X%2Fbtsw8jzyzMm%2FjBn6cuBapGhW2rHOdDip91%2Fimg.png)
[프로그래머스] lv3 베스트앨범 / 파이썬, 고득점kit
베스트앨범 쌩 노가다 한 틀린 코드 def solution(genres, plays): answer = [] dict = {} tmp, tmp2 = [], [] for i in range(len(genres)): tmp.append( [genres[i], plays[i] ]) for ge, pl in tmp: if ge not in dict: dict[ge] = pl else: dict[ge] += pl max1_genres = max(dict, key=dict.get) del dict[max1_genres] max2_genres = max(dict, key=dict.get) for idx, i in enumerate(tmp): if i[0] == max1_genres: tmp2.append([idx, ..
[프로그래머스] lv2 의상 / 파이썬, 고득점kit
의상 이전에 백준에서 똑같은 문제를 풀었다. 9375번: 패션왕 신해빈 def solution(clothes): answer = 1 dict = {} for name, type in clothes: if type not in dict: dict[type] = 1 else: dict[type] += 1 for key, value in dict.items(): answer *= (value+1) return answer-1
[프로그래머스] lv2 전화번호 목록 / 파이썬, 고득점kit
전화번호 목록 주의점!매개변수 phone_book은 문자열로 주어집니다.같은 번호가 중복해서 들어있지 않는다.해결방법!파이썬의 문자열 정렬을 이용한다.파이썬의 리스트 슬라이싱을 이용한다. def solution(phone_book): answer = True phone_book.sort() for i in range(len(phone_book)-1): if phone_book[i] == phone_book[i+1][:len(phone_book[i])]: answer = False return answer return answer 파이썬의 리스트 슬라이싱을 이용하면 index out of range를 받지 않고 해결할 수 있다. 반복..
[프로그래머스] lv1 완주하지 못한 선수 / 파이썬, 고득점kit
완주하지 못한 선수 주의점! completion의 길이는 participant의 길이보다 1 작습니다. 해결방법! participant와 completion의 길이가 항상 1 차이나고 participant에는 동명이인이 있을 수 있다는 점을 고려한다 딕셔너리를 이용해 participant의 수를 세어주고 completion의 수를 뺴주어 딕셔너리에 개수가 0이 아닌 key를 출력 def solution(participant, completion): dict = {} for par in participant: if par not in dict: dict[par] = 1 else: dict[par] += 1 for com in completion: if dict[com] != 0: dict[com] -= 1..
[프로그래머스] lv1 폰켓몬 / 파이썬, 고득점kit
폰켓몬 딕셔너리를 이용해 중복을 없앤다는 것을 이용한 문제입니다. def solution(nums): dict = {} for i in nums: if i not in dict: dict[i] = 1 if len(nums) // 2