파이썬소수(3)
-
파이썬 소수 나열하기
파이썬 소수 나열하기 소수란 1과 자기 자신 이외의 정수로 나누어 떨어지지 않는 수를 의미합니다. 즉 1과 자기 자신 이외의 정수로 나누어 떨어진다면 소수가 아님을 알 수 있습니다. 이를 통해 작성한 코드는 아래와 같습니다. cnt = 0 # 곱셈과 나눗셈을 합한 횟수 ptr = 0 # 이미 찾은 소수의 갯수 prime = [None] * 500 # 소수를 저장할 배열 prime[ptr] = 2 # 2는 소수이기에 미리 지정한다. ptr += 1 for n in range(3, 1001, 2): # 짝수는 확실한 합성수이므로, 5부터 1000까지 홀수만 대상으로 반복 for i in range(1, ptr): cnt += 1 if n % ptr[i] == 0: # n이 소수로 나누어지면, 합성수이므로 b..
2022.02.07 -
동백 // 백준 파이썬 2581번 소수
소수 출처 시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율 1 초 128 MB 60861 23360 20107 39.117% 문제 자연수 M과 N이 주어질 때 M이상 N이하의 자연수 중 소수인 것을 모두 골라 이들 소수의 합과 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 소수는 61, 67, 71, 73, 79, 83, 89, 97 총 8개가 있으므로, 이들 소수의 합은 620이고, 최솟값은 61이 된다. 입력 입력의 첫째 줄에 M이, 둘째 줄에 N이 주어진다. M과 N은 10,000이하의 자연수이며, M은 N보다 작거나 같다. 출력 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출..
2021.11.01 -
동백 // 백준 파이썬 1929번 소수 구하기
소수 구하기 시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율 2 초 256 MB 121092 33925 24001 27.127% 문제 M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. 출력 한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다. 예제 입력 1 3 16 예제 출력 1 3 5 7 11 13 내 코드 M, N = map(int, input().split()) r = N + 100 # 반복문 range만큼 리스트를 False로 가득 채움 check = [False for _ in range(r)] # 에라토스테네..
2021.11.01