반응형

파이썬 소수 판별 3

[파이썬, Python] 백준 2960: 에라토스테네스의 체

문제 https://www.acmicpc.net/problem/2960 2960번: 에라토스테네스의 체 2, 4, 6, 8, 10, 3, 9, 5, 7 순서대로 지워진다. 7번째 지워진 수는 9이다. www.acmicpc.net 코드 n, k = map(int, input().split()) num = list(i for i in range(2, n+1)) del_num = list() while len(del_num) < k: tar = num[0] for i in num: if i % tar == 0: del_num.append(i) num.remove(i) print(del_num[k-1]) 설명 우선 입력값을 받아주고 범위에 맞는 수 리스트를 생성해 주었다. 그리고 지워진 수의 값을 담아줄 리스트..

[파이썬, Python] 백준 1929: 소수 구하기

문제 https://www.acmicpc.net/problem/1929 1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. www.acmicpc.net 코드 m, n = map(int,input().split()) for i in range(m,n+1): if i == 1: continue for j in range(2, int(i**0.5)+1): if i%j == 0: break else: print(i) 설명 앞선 문제들은 에라토스테네스의 체를 이용하지 않고도 시간초과가 나지 않아서 진행했는데, 이 문제의 경우 이용하지 않으면 시간초과의 늪에서 벗어날 수 없었다. 에..

[파이썬, Python] 백준 2581: 소수

문제 https://www.acmicpc.net/problem/2581 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net 코드 m = int(input()) n = int(input()) num_list = [] for i in range(m,n+1): cnt = 0 if(i==1): continue for j in range(2, i+1): if(i%j == 0): cnt += 1 if cnt == 1: num_list.append(i) if len(num_list) == 0: print(-1) else: print(s..

반응형