-
[1978번] 소수 찾기 - Java카테고리 없음 2021. 11. 12. 20:42
https://www.acmicpc.net/problem/1978
1978번: 소수 찾기
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
www.acmicpc.net
1. 배운점
2. 개선할 점
- 2581번 처럼 반복문 실행 횟수를 줄일 수 있는 방법 찾아 개선할 것
3. 궁금한 점
4. 풀이
import java.util.Scanner; public class Main { public static void main(String[] args) { // import java.util.Scanner Scanner scan = new Scanner(System.in); //테스트 케이스 받아주기 int caseNum = scan.nextInt(); int count = 0; // 소수 개수 반영할 변수 count // 케이스 수 만큼 반복문 실행 for(int i = 0; i < caseNum; i++) { int number = scan.nextInt(); // 소수면 count++ if(isPrime(number)) { count++; } } // 결과 출력 System.out.println(count); } // 소수인지 확인해주는 메서드 private static boolean isPrime(int number) { // 입력된 숫자가 1인 경우 false 반환 if(number == 1) { return false; // 입력된 숫자가 1이 아닌 경우 } else { for(int i = 2; i < number; i ++) { // 2 ~ number - 1 사이 숫자 중 하나라도 나눠 떨어지는 경우 if(number % i == 0) { return false; } } return true; } } }