목차
우선 최솟값이 나오기위해서는 가장 큰값을 빼야 됨
equation = input().split('-')#-를 기준으로 슬라이싱
# print(equation)
answer = 0
for i in equation[0].split('+'): #-전 첫번쨰 요소 더하기
answer += int(i)
# print(answer)
for i in equation[1:]:
for j in i.split('+'):
# print('i는 -> ',i)
# print('j는 -> ', j)
answer -= int(j)
print(answer)
빼기 녀석이 관건이기 때문에
입력받은 방정식을 '-' 기준으로 분리 해서 저장했습니다.
만약에 입력이 2 + 4 - 3 + 3 -7
이라면
equation = ['2+4','3+3','7'] 이렇게 저장되고
첫번째 요소를 +를 기준으로 answer에 더해주고
그 다음 요소부터는 빼줘야 하기때문에
반복문을 추가해줬습니다.
2번째 요소 안에 + 연산이 들어가있을 수도 있기 때문에 +를 기준으로 또 분리해주고
answer에서 다 빼주면 끝입니다요
answer = -7
'알고리즘 > Python' 카테고리의 다른 글
[python] 백준 2447 : 별 찍기 -10 (재귀) (0) | 2024.02.21 |
---|---|
[python] 백준 4779 : 칸토어 집합 (재귀) (0) | 2024.02.19 |
[python] 백준 6603 : 로또 (combination, 백트랙킹) (0) | 2024.02.14 |
제너레이터 표현식 (0) | 2024.02.12 |