백준

백준 1541 잃어버린 괄호(Java)

Park DJ 2023. 2. 6. 14:08

https://www.acmicpc.net/problem/1541

 

1541번: 잃어버린 괄호

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

www.acmicpc.net


 

해석 및 팁

 


 

이 문제는 split을 사용하면 풀 수 있습니다. 먼저 split("-")을 통해 문자열을 분리합니다. 그다음 다시 한번 split("\\+")을 통해 문자열을 분리합니다. +를 기준으로 분리한 문자열을 sum에 더해준뒤 처음 sum값만 result에 저장한 후 나머지 sum은 빼주면 됩니다.

 


 

Java 코드

 


import java.util.Scanner;

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

    int result = 0;
    String str = sc.nextLine();
    String[] arr = str.split("-");
    
    for(int i = 0; i < arr.length; i++) {
      int sum = 0;
      String[] plus = arr[i].split("\\+");
      for(int j = 0; j < plus.length; j++) {
        sum += Integer.valueOf(plus[j]);
      }
      if(i == 0) result = sum;
      else result -= sum;
    }
  
    System.out.println(result);
  }
}