농담곰담곰이의곰담농

9020. 골드바흐의 추측

by 브이담곰

https://www.acmicpc.net/problem/9020

 

✔ 유형 : 수학

✔ 문제 풀이: 소수의 특성과 두 수의 합을 이용

 

골드바흐 추측

- 유명한 정수론의 미해결 문제

- 2보다 큰 모든 짝수는 두 소수의 합으로 나타낼 수 있다.

 

문제 조건

- 입력받은 N은 2보다 큰 짝수이다.
- N은 두 소수의 덧셈 값으로 나타낼 수 있다.
- 여러 쌍이 있다면 두 소수의 차이가 가장 작아야한다.

 

 

N의 중간값을 기준으로 두고 a+b = N 일 때, a와 b의 차이를 벌리며 a,b 두 수가 소수인 지점을 찾는다.

 

 

 

def isPrime(a : int) -> bool :
    if ( a == 1 ) : False

    for i in range(2, 10001):
        if( i*i > a ) : break
        if( a%i == 0 ) : return False

    return True

pbCount = int(input())

for n in range(pbCount):
    N = int(input())
    a = N//2
    b = N//2

    while(True):
        if(isPrime(a) and isPrime(b)) :
            print(a,b)
            break

        a -= 1
        b += 1

'Coding Test > Baekjoon' 카테고리의 다른 글

2751. 수 정렬하기 2  (0) 2024.07.10
1914. 하노이 탑  (0) 2024.07.06
1978. 소수 찾기  (0) 2024.07.06
2559. 수열  (0) 2023.11.22
9996. 한국이 그리울 땐 서버에 접속하지  (0) 2023.11.22

블로그의 정보

농담곰담곰이의곰담농

브이담곰

활동하기