# BOJ01541 잃어버린 괄호

https://www.acmicpc.net/problem/1541 (opens new window)

세준이는 양수와 +, -, 괄호를 가지고 식을 만들었다. 그 뒤 괄호를 모두 지웠다. 세준이는 괄호를 적절히 쳐서 이 식의 값을 최소로 만들려고 한다.

# 제출 코드

가장 최소로 나오기 위해서는 모든 양수를 더해서 빼는 것이다. 이것은 아주 간단하게 표현이 가능하다.

한가지 주의해야 할 점은 split 메소드를 활용해서 나눌 때 + 기호를 사용하기 위해 \\+와 같이 작성해야 한다.

아래는 최종 제출 코드이다.

import java.util.Scanner;

public class BOJ1541 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        String[] split = scanner.nextLine().split("-");

        int sum = 0;
        for (int i = 0; i < split.length; i++) {
            int num = 0;
            for (String s : split[i].split("\\+")) {
                num += Integer.parseInt(s);
            }

            sum = i == 0 ? num : sum - num;
        }

        System.out.println(sum);
    }
}
#algorithm #BOJ #수학 #문자열 #그리디 알고리즘 #파싱
last updated: 10/10/2021, 6:09:25 PM