백준
백준 1978 소수 찾기(Java)
Park DJ
2023. 1. 19. 03:29
https://www.acmicpc.net/problem/1978
1978번: 소수 찾기
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
www.acmicpc.net
해석 및 팁
이 문제는 소수의 개수를 출력하는 문제입니다. 소수란 1과 자기 자신으로밖에 나누어 떨어지지 않는 수이고 양의 약수의 개수가 2개입니다. 따라서 입력받은 수를 1부터 자기 자신까지 나누어서 나머지가 0인경우가 2이면 소수이므로 개수를 더해서 출력하면 됩니다.
Java 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int count = 0;
for(int i = 0; i < n; i++) {
int num = sc.nextInt();
int check = 0;
for(int j = 1; j <= num; j++) {
if(num % j == 0) check++; //1부터 num까지 나눠서 나머지0이면 check++
}
if(check == 2) count++; //소수 = 약수가 2개
}
System.out.println(count); //소수의 개수 출력
}
}