그동안 이것저것 프로그래밍 관련해서 많은 공부를 하느라 알고리즘을 소홀히 했다.
그리고 꼭 알고리즘 안풀어도 되잖아? 라고 했는데 잘못 생각했던것 같다.
여러모로 도움이 된다.
[백준] 1000번 : A+B - JAVA [자바]
https://www.acmicpc.net/problem/1000 1000번: A+B 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 첫째 줄에 A+B를 출력한다.
st-lab.tistory.com
정말 도움이 많이 되는 블로그다.
단순히 문제를 못풀어서 참고한게 아니고, 알고리즘을 넘어 자바 공부에 큰 도움을 주는 블로그라서 꾸준히 보고 있다.
가장 기본적인 Scanner를 사용한 풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int A = scan.nextInt();
int B = scan.nextInt();
System.out.println(A+B);
}
}
알고리즘 문제를 풀때는 Scanner보다 성능이 좋은 BufferedReader 를 이용하는게 좋다.
사실 이렇게 간단한 문제의 경우는 크게 상관이 없긴 한데 나중을 위해 BufferedReader를 평소에도 쓰고 있다.
그리고 문자열 분리를 위해서는 StringTokenizer와 split() 을 사용한다.
StringTokenizer가 성능이 더 좋다고 한다.
BufferedReader+StringTokenizer를 이용한 풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
System.out.println(A+B);
}
}
BufferedReader+Split()를 이용한 풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] str = br.readLine().split(" ");
int A= Integer.parseInt(str[0]);
int B= Integer.parseInt(str[1]);
System.out.println(A+B);
}
}
BufferedReader+StringTokenizer를 사용하는 것이 가장 좋은 것 같다.
System.out.println을 많이 사용하는 경우 BufferedWriter 까지 써주는게 제일 좋은데
이 문제의 경우 출력을 딱 한번만 사용해서 System.out.println을 사용했다.
오랜만에 푸는데 풀이 바로 떠오르지 않아서 당황스러웠다.
그래도 쉬운 내용이라 복습을 하니까 금방 생각이 났다.
1일 1 알고리즘 시작!
'알고리즘 풀이' 카테고리의 다른 글
[백준]2588번: 곱셈 - java 풀이 (0) | 2023.03.25 |
---|---|
[백준]10869번:사칙연산 - java 풀이 (0) | 2023.03.23 |
[백준]1001번: A-B - java 풀이 (0) | 2023.03.23 |
백준 10430 java 풀이 (0) | 2023.02.12 |
백준 10655번 java 풀이 (0) | 2023.02.11 |