https://www.acmicpc.net/problem/1541
문자를 숫자로 바꾸고
숫자들을 연산처리하는 부분이 시간이 걸리긴 했지만
어려운 문제는 아니었다
import java.io.*;
import java.util.*;
public class Main
{
public static void main(String[] args) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
ArrayList<Integer> arr = new ArrayList<>();
ArrayList<Character> oper = new ArrayList<>();
int idx = 0;
boolean allsub = false;
for (int i = 0; i < input.length(); ++i)
{
Character c = input.charAt(i);
if(c == '+' || c == '-')
{
if(c == '-')
allsub = true;
String num = input.substring(idx, i);
arr.add(Integer.parseInt(num));
idx = i+1;
if(allsub)
oper.add('-');
else
oper.add(c);
}
else if(i == input.length()-1)
{
String num = input.substring(idx, i+1);
arr.add(Integer.parseInt(num));
}
}
int sum = 0;
for (int i = 0; i < arr.size(); ++i)
{
if(i > 0)
{
if(oper.get(i-1) == '+')
sum += arr.get(i);
else
sum -= arr.get(i);
}
else
sum = arr.get(i);
}
System.out.println(sum);
}
}