🧪백준 4948 - 베르트랑 공준

2025. 2. 3. 02:18·📊 Algorithm

Tier : Silver 2


자연수 n이 주어지면, n보다 큰 소수 중에서 2n 이하에 있는 "소수의 개수"를 구하는 문제입니다.

입력값 최대 n은 123,456, 2n은 최대 246,912
2부터 246,912까지의 소수를 모두 찾으면 됩니다.

https://dev.hjwjo.com/48

 

🧪백준 1929 - 소수 구하기

https://www.acmicpc.net/problem/1929백준(BOJ) 사이트에 들어간 게 정말 오랜만이네요.최근에 바쁘다는 핑계로 알고리즘 문제 풀이에서 많이 멀어졌던 것 같습니다.이제부터라도 하루에 한 문제씩 가벼운

dev.hjwjo.com

에라토스테네스의 체(Sieve of Eratosthenes)를 이용해 쉽게(?) 문제를 풀 수 있습니다.

import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        
        int max = 246912;
        // 2n의 최대값은 246912
        boolean[] isPrime = new boolean[max + 1];
        // true = 소수, false = 소수가 아님
        Arrays.fill(isPrime, true); 
        // 기본값 모두 true로 설정
        isPrime[0] = isPrime[1] = false;
        // 0과 1은 소수가 아니므로 false
        
        for (int i = 2; i * i <= max; i++) {
            if (isPrime[i]) {
                for (int j = i * i; j <= max; j += i) {
                    isPrime[j] = false;
                    // 여기서 에라토스테네스의 체: i가 소수일 때, i의 배수들은 소수가 아님.
                }
            }
        }
        
        while (true) {
            int n = Integer.parseInt(br.readLine());
            if(n == 0) break;
            int count = 0;
            for (int i = n + 1; i <= 2 * n; i++) {
             // n보다 큰 소수 중, 2n 이하에 있는 소수의 개수 세기
                if (isPrime[i]) {
                    count++;
                }
            }
            sb.append(count).append("\n");
        }
        System.out.print(sb);
    }
}

'📊 Algorithm' 카테고리의 다른 글

🧪백준 4195 - 친구 네트워크  (0) 2025.02.03
'📊 Algorithm' 카테고리의 다른 글
  • 🧪백준 4195 - 친구 네트워크
hjwjo
hjwjo
백엔드 및 풀스택 개발에 관심 있는 초보 개발자의 개발 블로그입니다.
  • hjwjo
    Jeongwoo's Devlog
    hjwjo
  • 전체
    오늘
    어제
    • Devlog
      • 🗄️ Backend
        • Java
        • Spring
        • JPA
        • SQL
        • JSP
        • AWS
        • GCP
        • Linux
        • GitHub
        • ML
        • Security
      • 🖥️ Frontend
        • React
        • CSS
      • 🏅 Project
        • Hackathon
        • Team Project
      • 📊 Algorithm
        • BOJ
      • 📜 Certs
        • ADsP
        • SQLD
        • 정보처리기사
      • 📖
        • JavaScript
      • 일상
        • 면접후기
  • 블로그 메뉴

    • 홈
    • Devlog
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    ADsP
    스프링
    쿼리
    GCP
    AWS
    백엔드
    백준
    DML
    정보처리기사
    Spring
    http
    스프링부트
    데이터베이스
    java기초
    SQL
    자바
    정처기
    java
    springboot
    jsp
  • 최근 댓글

  • 최근 글

hjwjo
🧪백준 4948 - 베르트랑 공준
상단으로

티스토리툴바