ALGORITHM
백준 1541 잃어버린 괄호 (Java)
공부하는_다온
2023. 3. 18. 20:24
1. 문제 링크
1541번: 잃어버린 괄호
첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다
www.acmicpc.net
2. 문제 및 입출력예제
3. 문제 풀이
빼기 기준으로 문자열을 나눠서 각 문자열에서 더하기를 먼저 한다.
그러면 값을 뺄 때 더할 수 있는 값을 전부 더했기에 큰 값을 빼게 되는 것이다.
최종적으로 만들 수 있는 최솟값을 만들 수 있다.
4. 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] str = sc.next().split("-");
int result = Integer.MAX_VALUE;
for(int i=0;i<str.length;i++) {
int num = 0;
String[] str2 = str[i].split("\\+");
for(int j=0;j<str2.length;j++) {
num+=Integer.parseInt(str2[j]);
}
if(result == Integer.MAX_VALUE) {
result = num;
}
else {
result -= num;
}
}
System.out.println(result);
}
}