Park DJ
dj0998
Park DJ
전체 방문자
오늘
어제
  • 분류 전체보기 (363)
    • 백준 (363)

공지사항

인기 글

태그

  • 백준 7662
  • 백준 1495
  • 백준 2225
  • 백준 1011
  • 백준 16194
  • 백준 2343
  • 백준 12871
  • 백준 1531
  • 백준 3135
  • 백준 15655
  • 백준 2467
  • Java
  • 자바
  • 백준 3049
  • 백준 15312
  • 백준 10709
  • 백준 4659
  • 백준 6550
  • 백준 16926
  • 백준 14582
  • 백준 7567
  • 백준 8892
  • 백준 1747
  • 백준 24039
  • 백준 2591
  • 백준 15961
  • 백준 12605
  • 백준 1914
  • 백준 1064
  • 백준
hELLO · Designed By 정상우.
Park DJ
백준

백준 6588 골드바흐의 추측(Java)

백준 6588 골드바흐의 추측(Java)
백준

백준 6588 골드바흐의 추측(Java)

2023. 2. 12. 19:39

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

 

6588번: 골드바흐의 추측

각 테스트 케이스에 대해서, n = a + b 형태로 출력한다. 이때, a와 b는 홀수 소수이다. 숫자와 연산자는 공백 하나로 구분되어져 있다. 만약, n을 만들 수 있는 방법이 여러 가지라면, b-a가 가장 큰

www.acmicpc.net


 

해석 및 팁

 


 

이 문제는 에라토스테네스의 채를 활용하는 문제입니다. n의 범위가 100만이므로 먼저 100까지의 소수를 구해놓은 뒤 주어진수를 반복문을 통해 두 수의 합으로 나타내면 됩니다.

 


 

Java 코드

 


import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    StringBuilder sb = new StringBuilder();

    boolean[] arr= new boolean[1000001];

    arr[0] = true;
    arr[1] = true;
    for(int i = 2; i * i <= 1000000; i++) {
      if(arr[i] == true) continue;
      for(int j = i * i; j <= 1000000; j += i) arr[j] = true;
    }

    while(true) {
      int n = sc.nextInt();
      if(n == 0) break;
      int a = 2;
      int b = n - 2;
      while(true) {
        if(arr[a] == false && arr[b] == false) {
          sb.append(n+" = "+a+" + "+b).append("\n");
          break;
        }
        a++;
        b--;
      }
    }

    System.out.println(sb);
  }
}

'백준' 카테고리의 다른 글

백준 1500 최대 곱(Java)  (0) 2023.02.12
백준 1254 팰린드롬 만들기(Java)  (0) 2023.02.12
백준 15965 K번째 소수(Java)  (0) 2023.02.12
백준 17103 골드바흐 파티션(Java)  (0) 2023.02.12
백준 2178 미로 탐색(Java)  (0) 2023.02.12
    '백준' 카테고리의 다른 글
    • 백준 1500 최대 곱(Java)
    • 백준 1254 팰린드롬 만들기(Java)
    • 백준 15965 K번째 소수(Java)
    • 백준 17103 골드바흐 파티션(Java)
    Park DJ
    Park DJ

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.