[파이썬] 소수찾기

에구마·2022년 2월 15일
0

Python

목록 보기
4/11

소수

나누어 떨어지는 값이 1과 자기자신뿐인 수


소수 판별

입력값 N을 1부터 N까지의 N개의 수로 나누기했을때 나눠지는 수가 2이어야함.
-> 횟수를 줄이기 위해 2~N-1의 N-2개로 나누고 나눠지는 수가 없어야함

🔥#2577

a = int(input())
b = int(input())
c = int(input())

result = list(str(a * b * c))
for i in range(10):
    print(result.count(str(i)))

에라토스테네스의 체

M이상 N이하의 소수의 갯수(or 소수 모두 찾기)

N+1개칸의 배열을 소수로(True)초기화하고
2부터 각수의 배수인 값들의 칸은 False로 바꾼다. (소수가 아니니까)

🔥#1929

m,n = map(int,input().split())

#소수로 n+1개의 칸 초기화
sosu = [True for i in range(n+1)]
sosu[1]=False 		#1은 소수가 아니므로 제외해야한다

k = int(n ** 0.5)   # 정수n의 최대 약수는 sqrt(n)이하이다!!
for i in range(2,k+1):
  if (sosu[i]==True):
    for j in range(i+i,n+1,i):
      sosu[j]=False

for each in [p for p in range(m,n+1) if sosu[p]==True]:
  print(each)
profile
코딩하는 고구마 🍠 Life begins at the end of your comfort zone

0개의 댓글