250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
Tags
- prettier-code formatter
- 자바
- 네트워킹
- 이벤트
- 함수
- ScrollToPlugin
- 연습문제
- 자바스크립트
- JavaScript
- 초연결사회의 데이터통신과 네트워킹
- 데이터통신
- java
- Algorithm
- 알고리즘
- 라이브러리
- 한빛아카데미
- 일본어
- 백준
- 스크롤
- gsap
- quizlet
- ArrayList
- React
- html
- JLPT
- 단어장
- reactjs code snippets
- Node.js
- 초연결 사회의 데이터통신과 네트워킹
- scrolly
Archives
- Today
- Total
umilove98의 블로그
백준 2581 Java 자바 본문
반응형
에라토스테네스의 체 알고리즘을 이용해 2부터 n까지의 소수를 모두 구한다.
구한 소수들 중 m부터 n사이에 있는 소수들을 모두 더하고 그 합과 소수들 중 가장 작은 수를 출력한다.
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
public class Q2581 {
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;
boolean[] arr = new boolean[n+1];
arr[0] = arr[1] = false;
for(int i=2; i<=n; i++) {
arr[i] = true;
}
for(int i=2; i*i<=n; i++) {
for(int j=i*i; j<=n; j+=i) {
arr[j] = false;
}
}
ArrayList<Integer> list = new ArrayList<Integer>(); // m부터 n사이의 소수들을 저장해둘 리스트 생성
for(int i = m; i <= n; i++) {
if(arr[i]) {
sum += i;
list.add(i);
}
}
if(sum == 0) {
System.out.println(-1);
}else {
System.out.println(sum);
System.out.println(list.get(0)); //m부터 n사이의 소수들 중 가장 작은 수를 출력
}
}
}
|
cs |
반응형
'algorithm > 백준' 카테고리의 다른 글
백준 2204 Java 자바 (0) | 2021.08.29 |
---|---|
백준 2355 Java 자바 (0) | 2021.08.28 |
백준 2163 Java 자바 (0) | 2021.08.27 |
백준 2530 Java 자바 (0) | 2021.08.26 |
백준 1934 Java 자바 (0) | 2021.08.25 |