반응형
https://www.acmicpc.net/problem/1978
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws Exception{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
int N=Integer.parseInt(br.readLine());
StringTokenizer strToken=new StringTokenizer(br.readLine()," ");
int result=0;
for(int i=0;i<N;i++){
int a=Integer.parseInt(strToken.nextToken());
if(primeNumberCount(a)) result++;
}
System.out.println(result);
}
//소수의 개수 카운트 리턴
public static boolean primeNumberCount(int number){
if(number==1) return false;
if(number==2) return true;
if(number==3) return true;
for(int i=2;i<=(number/2);i++){
if(number%i==0) return false;
}
return true;
}
}
문제풀이 : 소수란 1과 자신으로만 나누어떨어지는 정수
나눌때 number/2 만 확인하면 됩니다. 그 이상 나누는게 무의미 합니다.
반응형
'프로그래밍 > 알고리즘 풀이' 카테고리의 다른 글
[알고리즘] 백준 2609번 최대공약수와 최소공배수 Java 자바 (0) | 2021.05.17 |
---|---|
[알고리즘] 백준 1929번 소수 구하기 Java 자바 (0) | 2021.05.17 |
[알고리즘] 백준 1037번 약수 Java 자바 (0) | 2021.05.14 |
[알고리즘] 백준 2522번 별 찍기 - 12 Java 자바 (0) | 2021.05.14 |
[알고리즘] 백준 2439번 별 찍기 - 2 Java 자바 (0) | 2021.05.07 |
댓글