문제
나의 답안
s=input().split('-')
re=0
for i in s[0].split('+'):
re+=int(i)
for i in s[1:]:
for j in i.split('+'):
re-=int(j)
print(re)
접근 방법
- 마이너스(-)가 나오기 전까지 식의 값은 최소가 될 수 없다.
- 따라서 마이너스가 나오기 전까지 모든 값을 더해주고, 마이너스가 나온 후에는 나머지 모든 숫자를 빼주면 된다.
- split로 -를 기준으로 식(s)을 분리해준다.
(ex. 50+50+60-10+50 ['50+50+60', '10+50'])
- 분리한 식(s)을 기준으로 첫번째 인자를 다시 '+'를 기준으로 분리해준다.
(ex. ['50','50','60'] )
- 2.에서 분리한 인자값을 모두 더해준다(re). 이때, 정수형으로 변환해주어야 한다.
- 반복문으로 원래 입력한 값(s)에서 마이너스 이후의 값에 접근한다.(s[1:])
(ex. ['10+50'])
반복문으로 이를 '+'로 분리한다.
(ex. ['10','50'])
- 3.에서 구한 값에 4.의 각 값을 빼준다.