문제 설명
1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요.
소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다.
(1은 소수가 아닙니다.)
제한 조건
- n은 2이상 1000000이하의 자연수입니다.
입출력 예
n | result |
10 | 4 |
5 | 3 |
풀이
import java.math.*; class Solution { public int solution(int n) { int answer = 0; for(int i=2; i<=n; i++) { if(isPrime(i)) answer++; } return answer; } public static boolean isPrime(int a) { for(int i=2; i<=Math.sqrt(a); i++) { if(a % i == 0) return false; } return true; } }
'Coding Test > 프로그래머스[JAVA]' 카테고리의 다른 글
[프로그래머스 Lv1.] 161989번 덧칠하기 (JAVA) (0) | 2024.11.27 |
---|---|
[프로그래머스 Lv1.] 12977번 소수 만들기 (JAVA) (0) | 2024.11.27 |
[프로그래머스 Lv1.] 135808번 과일 장수 (JAVA) (0) | 2024.11.26 |
[프로그래머스 Lv1.] 12901번 2016년 (JAVA) (0) | 2024.11.26 |
[프로그래머스 Lv1.] 159994번 카드 뭉치 (JAVA) (2) | 2024.11.26 |