[★1][백준10869번]사칙연산 (JAVA)
카테고리: BKJN
태그: Algorithm Java Coding Test
[★1][백준10869번]사칙연산 (JAVA)
10869번 문제 ☞ https://www.acmicpc.net/problem/10869
난이도 ☞ [★1]
사칙연산
- 문제
- 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오.
- 두 자연수 A와 B가 주어진다.
-
첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다.
예제입력 예제출력 7 3 10
4
21
2
1
내가 푼 풀이
[ 풀이 1 ]
메모리 :
17752KB
시간 :208ms
Scanner
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int a = s.nextInt();
int b = s.nextInt();
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);
System.out.println(a%b);
s.close();
}
}
풀이 1번은 제일 심플하게 Scanner방식으로 구현해보았다. 참고로 예제에서 보시다시피 정수형으로 받아 정수형으로 출력되는 방식으로 되어있어서 double a
또는 double b
로 선언을 할 경우 틀렸습니다.
라고 오답처리 문구가 나옵니다.
[ 풀이 2 ]
메모리 :
14188KB
시간 :132ms
BufferedReader, StringTokenizer
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));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str, " ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.println(a + b);
System.out.println(a - b);
System.out.println(a * b);
System.out.println(a / b);
System.out.println(a % b);
}
}
풀이 2번도 마찬가지로 int
형이 아닌 double
형 일 경우, 틀렸습니다
라는 오답문구가 출력됩니다.
[ 풀이 3 ]
메모리 :
14184KB
시간 :124ms
BufferedReader
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);
System.out.println(a - b);
System.out.println(a * b);
System.out.println(a / b);
System.out.println(a % b);
}
}
여러 사칙연산의 코드로 알 수 있다시피 BufferedReader
과 StringTokenizer
방식이 효율이 가장 좋은 걸 알 수 있습니다.
댓글 남기기