728x90
풀이 방법
수를 입력받으면, 2부터 그 수까지 나눈 나머지가 0이 되는 수가 있으면 소수가 아니고, 없으면 소수이다. 그래서 findPrime 메소드를 사용하여 boolean 값을 리턴 받은 후, 리턴 값이 true이면 소수의 개수를 늘렸다.
사용 개념
소수
코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
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));
StringTokenizer st = new StringTokenizer(br.readLine());
int limit = Integer.parseInt(st.nextToken());
st = new StringTokenizer(br.readLine());
int primenum = 0;
for(int i = 0; i < limit; i++)
if(findPrime(Integer.parseInt(st.nextToken())) == true) primenum++;
System.out.print(primenum);
}
static boolean findPrime(int num){
if(num == 1) return false;
int cnt = 0;
for(int i = 2; i < num; i++){
if(num % i == 0) cnt++;
}
if(cnt == 0) return true;
else return false;
}
}
|
cs |
728x90
'BOJ(Java)' 카테고리의 다른 글
자바(백준) 2609 최대공약수와 최소공배수 (0) | 2021.04.26 |
---|---|
자바(백준) 1929 소수 구하기 (0) | 2021.04.26 |
자바(백준) 1037 약수 (0) | 2021.04.26 |
자바(백준) 9095 1, 2, 3 더하기 (0) | 2021.04.26 |
자바(백준) 1182 부분 수열의 합 (0) | 2021.04.26 |