Computer Science (CS)/알고리즘
[백준/Java] 2581번 소수
eune7
2023. 5. 21. 15:35
728x90
반응형
문제
정답 풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int M = Integer.parseInt(br.readLine());
int N = Integer.parseInt(br.readLine());
int sum = 0;
int min = N+1;
for(int i = M; i <= N; i++){
int check = 0;
for(int j = 1; j<=i; j++){
if(i%j == 0){
check++;
}
}
if(check == 2){
sum+=i;
if(min > i) min = i;
}
}
if(sum == 0) System.out.print(-1);
else{
System.out.println(sum);
System.out.println(min);
}
br.close();
}
}
- 메모리 14568KB
- 시간 300ms
직전에 풀었던 소수 찾기 문제와 동일한 접근 방법을 사용했습니다.
약수의 갯수가 2개면 소수로 판단하여 소수의 합(sum)과 소수 중 최솟값(min)을 계산해줬어요.
sum이 0이라는 것은 소수가 없었다는 것이니 -1을 출력해주고
그렇지 않을 경우 sum과 min을 출력해주면 끝입니다.
728x90
반응형