-
[백준] 9020번_골드바흐의추측Study/알고리즘 2020. 2. 11. 14:26
문제 링크 : https://www.acmicpc.net/problem/9020
9020번: 골드바흐의 추측
문제 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아니다. 골드바흐의 추측은 유명한 정수론의 미해결 문제로, 2보다 큰 모든 짝수는 두 소수의 합으로 나타낼 수 있다는 것이다. 이러한 수를 골드바흐 수라고 한다. 또, 짝수를 두 소수의 합으로 나타내는 표현을 그 수의 골드바흐 파티션이라고 한다.
www.acmicpc.net
def prime_arr(): nums = [i for i in range(2,10000)] p_arr = [] for num in nums: flag = True for i in range(2,int(num**0.5)+1): if num%i == 0: flag = False break if flag: p_arr.append(num) return p_arr p_arr = prime_arr() def range_arr(e): r = [p for p in p_arr if p<e] return r for _ in range(int(input())): even = int(input()) candi = range_arr(even) start = even//2 for _ in range(len(candi)): if start in candi and (even-start) in candi: print(start,even-start) break else: start -= 1
'Study > 알고리즘' 카테고리의 다른 글
[백준] 14891번_톱니바퀴 (0) 2020.02.13 [백준] 2615번_오목 (0) 2020.02.12 [백준] 10872번_팩토리얼 (0) 2020.02.10 [백준] 1002번_터렛 (0) 2020.02.10 [백준] 3053번_택시기하학 (0) 2020.02.10