Notice
Recent Posts
Recent Comments
Link
«   2025/03   »
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 31
Tags
more
Archives
Today
Total
관리 메뉴

하루에 하나씩 공부하기

폰켓몬-LV1 본문

파이썬

폰켓몬-LV1

dltaexox 2025. 2. 25. 15:09

코딩테스트 연습 - 폰켓몬 | 프로그래머스 스쿨

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

[해시]

인덱스를 숫자가 아닌 문자열, 튜플 사용하려고 할 때 사용

 

- 빈딕셔너리 생성

dict1={}

dict2=dict()

 

- 딕셔너리 원소 가져오기

dict.get(key, x) : 딕셔너리에 key값이 있을 경우 value, 없을 경우 x 리턴

 

- 딕셔너리 수정

dict[key] = 100, dict[key]+=20 등등

 

- 딕셔너리 삭제

del dict[key]

dict.pop(key, default값) : key값이 있을 경우 value 리턴, 없을 경우 default 값 리턴

 

- 딕셔너리 key, value 뽑기

dict.keys()

dict.items() 

 

- 키포인트

해시 사용할 줄 몰랐음

dict[i]=1로 해시 중복제거

시퀀스(sequence) 리스트(list) 순서가 있고, 가변(mutable) [1, 2, 3]
시퀀스(sequence) 튜플(tuple) 순서가 있고, 불변(immutable) (1, 2, 3)
세트(set) 세트(set) 순서가 없고, 중복을 허용하지 않음 {1, 2, 3}
맵(map) 딕셔너리(dictionary) 순서가 없고, key/value 쌍으로 이루어짐 {'a': 1, 'b': 2, 'c': 3}

 

- 코드

def solution(nums):
    answer = 0
    dict={}
    for i in nums :
        dict[i]=1
    if len(nums) // 2 <=len(dict) :
        return len(nums)//2
    return len(dict)
def solution(nums):
    return min(len(nums)//2, len(set(nums)))

 

set로 딕셔너리 중복 제거

'파이썬' 카테고리의 다른 글

K번째수-LV1  (0) 2025.03.09
베스트앨범-LV3  (1) 2025.03.09
의상-LV2  (0) 2025.02.28
전화번호 목록-LV2  (0) 2025.02.27
완주하지 못한 선수-LV1  (0) 2025.02.25