티스토리 뷰
https://www.acmicpc.net/problem/9020
골드바흐의 추측은 2보다 큰 모든 짝수는 두 개의 소수의 합으로 나타낼 수 있다는 것이다. 아직 정수론의 미해결 문제로 현재까지 10^18 이하에서 참이라는 것을 확인했다고 한다. 에라토스테네스의 체로 소수를 미리 구한후 n의 절반부터 줄여가면서 i와 n-i가 소수가 되는지 확인한다. 이 때 처음 발견하는 골드바흐 파티션이 두 소수의 차이가 최소이다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | #include <cstdio> bool p[10001]; int t,n; int main() { p[0]=p[1]=true; for(int i=2;i*i<10001;i++) if(!p[i]) for(int j=2*i;j<10001;j+=i) p[j]=true; scanf("%d",&t); while(t--) { scanf("%d",&n); for(int i=n/2;i>=2;i--) { if(!p[i] && !p[n-i]) { printf("%d %d\n",i,n-i); break; } } } return 0; } | cs |
'Algorithm > BOJ' 카테고리의 다른 글
2448 별찍기 - 11 (0) | 2018.02.11 |
---|---|
1914 하노이 탑 (0) | 2018.02.09 |
11559 Puyo Puyo (0) | 2018.02.09 |
5635 생일 (0) | 2018.02.09 |
1992 쿼드트리 (0) | 2018.02.09 |