방법을 외울 때까지 일주일동안 외워서 쓰는 연습만 하다 결국 방법을 외울 수 있었던 문제
import sys
n = int(sys.stdin.readline())
k = int(sys.stdin.readline())
# 소수 구하기
prime_num = [1] * (n+1)
for i in range(2,int(n**(0.5))+1):
if prime_num[i]:
for j in range(2*i,n+1,i):
prime_num[j] = 0
print(prime_num)
# k 세준수 구하기
k_num = [1] * (n+1)
for i in range(2,n+1):
if prime_num[i] and i > k: # 소수 일 때
for j in range(i,n+1,i):
k_num[j] = 0
print(k_num)
'알고리즘 문제풀이' 카테고리의 다른 글
백준 25206 너의 평점은 Python 수학 구현 실버5 (1) | 2024.03.15 |
---|---|
백준 2960 에라토스테네스의 체 Python 수학 소수 실버4 (1) | 2024.03.15 |
백준 25496 장신구 명장 임스 Python 그리디 정렬 실버5 (0) | 2024.03.14 |
백준 8979 올림픽 Python 구현 정렬 실버5 (0) | 2024.03.13 |
백준 1652. 누울 자리를 찾아라 Python 구현 문자열 실버5 (0) | 2024.03.12 |