본문 바로가기

728x90

소수

(2)
[프로그래머스] Lv.1 소수 찾기 [Python] 1~n 사이의 소수 개수 구하기 더보기 문제 설명 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. $($1은 소수가 아닙니다.$)$ 제한 조건 n은 2이상 1000000이하의 자연수입니다. https://school.programmers.co.kr/learn/courses/30/lessons/12921 에라토스테네스의 체를 이용해서 풀었습니다. 소수의 배수를 제거함으로써 소수만 남기는 방법 n의 제곱근 까지만 위 방법으로 체로 거르면 n까지의 소수를 모두 구할 수 있습니다. def solution(n): s = [0, 0] + [1] * (n-1) for i in range(2, int(n**...
[백준] 1929번 소수 구하기 [Python] M이상 N이하의 소수를 모두 출력 더보기 문제 M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. $(1 ≤ M ≤ N ≤ 1,000,000)$ M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. 출력 한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다. https://www.acmicpc.net/problem/1929 에라토스테네스의 체 - 크기가 작은 소수 순서대로 그 소수의 배수를 제거해 나가는 방식 위 과정을 통해 합성수는 제거되고 소수만 남게 됩니다. import sys def f(M,N): li = [False,False,True]+[i%2 for i in range(3,N+1)] for n in range(3, ..