카테고리 없음
[ 파이썬 ] 소수 찾기
뚜비두빱
2020. 5. 3. 17:58
https://programmers.co.kr/learn/courses/30/lessons/12921
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
에라토스테네스의 체 방법으로 빠르게 소수를 구할 수 있다.
🤓 [ 풀이에 쓰인 파이썬 문법 정리 ]
set(집합)
파이썬 자료형인 set
인데 다음과 같은 특징을 가진다.
- set은 수학에서 이야기하는 집합과 비슷합니다.
- 순서가 없고, 집합안에서는 unique한 값을 가집니다.
- 그리고 mutable 객체입니다.
[ MyCode ]
def solution (n) :
fact = [True] * n
Rist = []
for i in range (2,n+1):
if (fact[i]):
Rist.append(i)
for j in range (2,n):
if i*j >= (n+1):
break
if fact[i*j]:
fact[i*j] = False
return len(Rist)
[ GoodCode ]
def solution (n) :
num = set(range(2,n+1)) # 2부터 n까지의 set생성
for i in range(2,n+1) :
if i in num : # set안에 i가 있으면
num -= set(range(2*i,n+1,i)) # i의 2배부터, i의 배수들을 빼준다.
return len(num) # 나머지 return