Java으로 구현한 1978번 소수 찾기 문제 풀이입니다.
https://www.acmicpc.net/problem/1978
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int result = 0;
for (int i=0; i<n; i++) {
int value = sc.nextInt();
if (value == 1)
continue;
if (check_prime(value)) {
result ++;
}
}
System.out.println(result);
}
static boolean check_prime(int value) {
for (int i=2; i<value; i++) {
if (value % i == 0)
return false;
}
return true;
}
}
1. n개의 수를 입력받는데, 하나의 정수 값에 대하여 소수인지 판별하고 소수라면 result 값을 1 증가시킨다.
2. 소수인지 판별하는 check_prime() 함수의 작업은 아래와 같다.
- 2부터 value-1까지의 수를 각각 확인하는데, 그 값을 value에 나누었을 때 나누어 떨어진다면 소수가 아니므로 false를 반환한다.
- 반복문이 모두 끝날때까지 false가 반환되지 않았다면 소수이므로 true를 반환한다.
'백준(JAVA) 풀이 > 수학' 카테고리의 다른 글
백준(JAVA) 2609번 최대공약수와 최소공배수 풀이 (0) | 2022.08.26 |
---|---|
백준(JAVA) 1929번 소수 구하기 풀이 (0) | 2022.08.26 |
백준(JAVA) 1037번 약수 풀이 (0) | 2022.08.25 |
백준(JAVA) 10818번 최소, 최대 풀이 (0) | 2022.03.29 |
백준(JAVA) 8393번 합 풀이 (0) | 2022.03.29 |