백준/Bronze

[Bronze II] 소수 찾기 - Java

JunKiBeom 2025. 8. 5. 17:49
반응형

문제 링크

성능 요약

메모리: 17848 KB, 시간: 184 ms

분류

소수 판정, 정수론, 수학

제출 일자

2024년 11월 23일 01:43:40

문제 설명

주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.

입력

첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.

출력

주어진 수들 중 소수의 개수를 출력한다.


import java.util.Scanner;

public class Main {
    // 소수 판별 함수
    public static boolean isPrime(int n) {
        if (n < 2) return false; // 0과 1은 소수가 아님

        for (int i = 2; i <= Math.sqrt(n); i++) { // √n까지만 검사
            if (n % i == 0) return false; // 나누어떨어지면 소수가 아님
        }
        return true;
    }

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

        int n = sc.nextInt();
        int cnt = 0;

        for (int i = 0; i < n; i++) {
            int num = sc.nextInt();
            if (isPrime(num)) cnt++;
        }

        System.out.println(cnt);
    }
}
반응형

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

[Bronze II] 숫자의 개수 - Java  (0) 2025.08.05
[Bronze III] 오븐 시계 - Java  (2) 2025.08.05
[Bronze I] 평균 - Java  (3) 2025.08.04
[Bronze I] 팰린드롬수 - Java  (0) 2025.08.04
[Bronze II] 단어의 개수 - Java  (1) 2025.08.04