Java

🔑알고리즘/baekjoon

백준 1929 : 소수 구하기 - 자바 문제 풀이(시간 초과 해결)

백준 1929 소수 구하기 문제입니다. https://www.acmicpc.net/problem/1929 1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. www.acmicpc.net 다음과 같이 시간초과가 뜨더군요 그래서 저는 자바에서 제공되는 Math 클래스의 sqrt인 제곱근을 활용하였습니다. 소수를 구하는 prime(int n) 메서드입니다. 저번에 블로그에 올렸던 코드와 유사하지만 Math.sqrt(n)으로 반복문의 반복을 줄였습니다. static boolean prime(int n) { for (int i = 2; i

🔑알고리즘/baekjoon

백준 2581 : 소수 - JAVA(자바) 해결 코드

백준 2581번 문제는 소수문제입니다. https://www.acmicpc.net/problem/2581 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net 자연수 M부터 N까지의 수 중 소수를 골라 소수의 합과 소수 중 최소값을 출력하는 문제입니다. 답지입니다. 해설을 해보자면 prime(int n)이라는 소수를 확인하는 boolean 메서드를 만들고 시작했습니다. 2부터 n/2보다 작은 수까지 나눴을 때 나머지가 0인 수가 없을 때 그 수는 소수가 됩니다. 그리고 최소값을 추가해주기 위해서 자주 사용하는 i++가 아닌 ..

🔑알고리즘/baekjoon

백준 9012 : 괄호 자바 문제 풀이 (Stack 사용 문제)

이 문제는 stack을 사용하는 문제입니다. 1. 첫 번째 문자는 "("이어야 한다. 2. 맨 마지막 문자는 ")"이어야 한다. 3. "(" 개수와 ")"의 개수가 같아야 한다. 이걸 스택으로 생각해볼까요? "(" 이면 push() 한다. ")" 이면 pop 한다. 그런데 stack에 아무것도 없을 때, pop을 하면 오류가 나기 때문에 ")" 나왔을때 비어있지 않다면 pop() 비어 있으면 NO를 출력한다. 이 문제도 BufferedReader를 사용하여 풀었습니다. import java.util.*; import java.io.*; public class Main{ public static void main(String[] args) throws IOException, NumberFormatExcep..

🔑알고리즘/baekjoon

백준 10773 : 제로 자바 문제 풀이 (스택 사용 문제)

이 문제 또한 간단한 문제입니다. 예제 2번을 설명한 그림입니다. 0이 나오면 stack에 있는 제일 최근 것을 pop() 하면 되겠다는 생각이 들죠. 그리고 나머지 스택에 들어 있는 걸 다 더해주면 되는데 그건 stack이 빌 때까지 pop()을 하면 됩니다. 시간 초과의 기억으로 게속 BufferedReader에 익숙해지려고 이 문제도 버퍼로 풀었어요. import java.io.*; import java.util.*; public class Main{ public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader br = new BufferedReader(new InputStreamRea..

pkyung
'Java' 태그의 글 목록 (2 Page)