coding test - python/Programmers

Programmers / 소수찾기 / Python

sillon 2022. 3. 31. 22:10
728x90
반응형

 

*문제 출처는 프로그래머스에 있습니다.

문제 제목: 소수 찾기

문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12921


나의 풀이

def solution(n):
    ch = [0] * (n+1) 
    cnt = 0
    for i in range(2,n+1):
        if ch[i] == 0:
            cnt += 1
        for j in range(i,n+1,i):
            ch[j] = 1
    return cnt

 

다른 풀이

def solution(n):
    num=set(range(2,n+1))

    for i in range(2,n+1):
        if i in num:
            num-=set(range(2*i,n+1,i))
    return len(num)

※ 알아야 할 것

- set함수를 이용해서도 풀 수 있다

 

728x90
반응형