본문 바로가기
Programmers/programmers

[프로그래머스]set을 이용하여 중복을 제거하기/ 집합 A-B의 연산

by 딸기뚜왈기 2023. 12. 21.
def solution(l, r):
    answer = []
    for i in range(l,r+1):
        if str(i).count("0") + str(i).count("5") == len(str(i)):
            answer.append(i)
    if len(answer) == 0 :
        return [-1]
    return answer

 

def solution(l, r):
    answer = []
    for num in range(l, r + 1):
        if not set(str(num)) - set(['0', '5']):
            answer.append(num)
    return answer if answer else [-1]

set(str(num))

 

숫자 650이 set(str(num))을 거치면 

중복된 숫자를 제외하고 {"6","5","0"}이 출력된다.

 

set(str(num)) - set(['0', '5']) 에서

  1. set(str(650))은 {'6', '5', '0'}을 생성한다.
  2. set(['0', '5'])은 {'0', '5'}를 생성한다.
  3. set(str(650)) - set(['0', '5'])은 중복을 허용하지 않는 집합에서 '0'과 '5'를 제외한 {'6'}을 생성한다.

 

 

 

A = {1, 2, 3, 4, 5}
B = {3, 4, 5, 6, 7}
result = A - B
print(result)  # 출력: {1, 2}

두 집합 A와 B에 대해

A - B 연산은

A에 속하면서 B에는 속하지 않는 원소들로 이루어진 집합을 반환한다.

즉, A에서 B의 원소를 제외한 부분 집합을 구한다.