-
[BOJ] 2581번Algorithm/Baekjoon Online Judge 2022. 3. 12. 13:43728x90
https://www.acmicpc.net/problem/2581
Python3
if __name__ == '__main__': M = int(input()) N = int(input()) prime = [] for number in range(M, N+1): is_sosu = 1 if number == 1: continue for i in range(2, number): if number % i == 0: is_sosu = 0 break if is_sosu: prime.append(number) if not prime: print(-1) else: print(sum(prime)) print(min(prime))
입력받은 M부터 N까지 수를 돌면서 소수를 찾아 prime 리스트에 삽입했다. 소수 판별은 우선 수가 1일 경우 예외처리를 해주었고, 2부터 number-1까지의 수들로 나누어보면서 나누어진다면 소수가 아님으로 is_sosu변수 값을 0으로 저장했다. 반복문이 끝나고 is_sosu 변수를 보았을 때 소수라면 prime 리스트에 삽입했다.
만약 prime 리스트가 비어있다면 -1을 출력하고 아니라면 내장함수인 sum과 min을 사용해 소수의 합과 최소값을 출력했다.
728x90'Algorithm > Baekjoon Online Judge' 카테고리의 다른 글
[BOJ] 4948번 (0) 2022.03.12 [BOJ] 11653번 (0) 2022.03.12 [BOJ] 1978번 (0) 2022.03.12 [BOJ] 10757번 (0) 2022.03.12 [BOJ] 2775번 (0) 2022.03.12