Study📚/백준

[백준] - #1978: 소수 찾기

woo!na 2024. 5. 29. 22:27

문제 출처 : https://www.acmicpc.net/

 


#1978: 소수 찾기 (언어 : Java11)


제출 답안

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer stz;
		int num = Integer.parseInt(br.readLine());
		stz = new StringTokenizer(br.readLine());
		int count = 0;
		for(int i=0; i<num; i++) {
			int temp = Integer.parseInt(stz.nextToken());
			if(temp<=1)
				continue;
			boolean prime = true;
			for(int j=2; j*j<=temp; j++) {
				if(temp%j==0) {
					prime = false;
					break;
				}
			}
			if(prime)
				count++;
		}
		System.out.println(count);
	}
}

comment

- 16는 [1, 2, 4, 8, 16]이며 4를 제외한 다른 약수들은 16의 제곱근인 4보다 작다. 그리고 4 이상의 약수를 확인할 때, 이미 확인한 수를 다시 확인하지 않기 위해 j*j <= temp와 같은 조건을 사용했다.

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

[백준] - #9012: 괄호  (0) 2024.05.31
[백준] - #10872: 팩토리얼  (0) 2024.05.30
[백준] - #4344: 평균은 넘겠지  (0) 2024.05.29
[백준] - #2750: 수 정렬하기  (0) 2024.05.28
[백준] - #2908: 상수  (0) 2024.05.28