녕의 학습 기록

백준_1541 잃어버린 괄호 (그리디) 본문

Algorithm/Algorithm 문제

백준_1541 잃어버린 괄호 (그리디)

kjyyjk 2024. 1. 31. 10:21

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class BJ_1541_잃어버린괄호 {

    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        StringTokenizer st = new StringTokenizer(br.readLine(), "-");

        int firstNum = calculate(st.nextToken());

        int sum = 0;
        while(st.hasMoreTokens()) {
            sum += calculate(st.nextToken());
        }

        int result = firstNum - sum;

        System.out.println(new StringBuilder().append(result));

    }

    private static int calculate(String s) {
        int tempSum = 0;
        StringTokenizer st = new StringTokenizer(s, "+");

        while(st.hasMoreTokens()) {
            tempSum += Integer.parseInt(st.nextToken());
        }

        return tempSum;
    }

}

 

 

1541번: 잃어버린 괄호

첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다

www.acmicpc.net