목차
#1 간단한 식 계산하기
문제 설명
문자열 binomial이 매개변수로 주어집니다. binomial은 "a op b" 형태의 이항식이고 a와 b는 음이 아닌 정수, op는 '+', '-', '*' 중 하나입니다. 주어진 식을 계산한 정수를 return 하는 solution 함수를 작성해 주세요.
제한사항
- 0 ≤ a, b ≤ 40,000
- 0을 제외하고 a, b는 0으로 시작하지 않습니다.
입출력 예
binomial | result |
"43 + 12" | 55 |
"0 - 7777" | -7777 |
"40000 * 40000" | 1600000000 |
입출력 예 설명
입출력 예 #1
- 예제 1번의 binomial은 "43 + 12"로 이 식을 계산한 결과인 43 + 12 = 55를 return 합니다.
입출력 예 #2
- 예제 2번의 binomial은 "0 - 7777"로 이 식을 계산한 결과인 0 - 7777 = -7777을 return 합니다.
입출력 예 #3
- 예제 3번의 binomial은 "40000 * 40000"으로 이 식을 계산한 결과인 40000 × 40000 = 1600000000을 return 합니다.
#2 알고리즘 및 코드
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
Solution solution = new Solution();
String binomial = "40000 * 40000";
int result = solution.solution(binomial);
System.out.println(result); // 출력 예상값: 1600000000
String binomial1 = "43 + 12";
int result1 = solution.solution(binomial1);
System.out.println(result1); // 출력 예상값: 55
String binomial2 = "0 - 7777";
int result2 = solution.solution(binomial2);
System.out.println(result2); // 출력 예상값: -7777
}
}
class Solution {
public int solution(String binomial) {
String[] tokens = binomial.split(" ");
int a = Integer.parseInt(tokens[0]);
String op = tokens[1];
int b = Integer.parseInt(tokens[2]);
int answer = 0;
switch (op) {
case "+":
answer = a + b;
break;
case "-":
answer = a - b;
break;
case "*":
answer = a * b;
break;
default:
System.out.println("Invalid operator");
break;
}
return answer;
}
}
- " " 공백을 기준으로 나누어 문자열 배열에 저장하고 이를 변환하여 a, op, b에 저장하고 연산을 한다.
'JAVA > 프로그래머스 코딩 기초 트레이닝' 카테고리의 다른 글
[프로그래머스, LV.0] 세 개의 구분자 (0) | 2024.02.12 |
---|---|
[프로그래머스, LV.0] 문자열 바꿔서 찾기 (0) | 2024.01.06 |
[프로그래머스, LV.0] 문자열 잘라서 정렬하기 (1) | 2024.01.06 |
[프로그래머스, LV.0] x 사이의 개수 (0) | 2024.01.06 |
[프로그래머스, LV.0] 공백으로 구분하기 2 (1) | 2024.01.06 |