백준|1541번|잃어버린 괄호

README·2022년 7월 31일
0

파이썬 PS풀이

목록 보기
32/136

문제설명
+, -, 정수로 이루어진 문자열을 입력받고 괄호를 적절하게 쳐서 최저의 수를 구하는 문제입니다.

작동 순서
1. 문자열을 입력받습니다.
2. 문자열을 -를 기준으로 나눕니다.
3. 만약 -가 없어서 나눌것이 없으면 입력받은 숫자들을 모두 더하여 출력합니다.
4. 문자열의 맨 앞자리부터 첫번째 - 이전까지 구간은 괄호를 쳐도 -가 될수 없기때문에 sum에 모두 더해주고 그 이후의 수들은 모두 sum에서 -를 해주고 출력합니다.

소스코드

exp = input()
e = exp.split('-')
Sum = 0
if len(e) == 1:
    One = exp.split('+')
    for i in range(len(One)):
        Sum += int(One[i])
    print(Sum)
else:
    for i in range(len(e)):
        count = 0
        ePart = e[i].split('+')
        for j in range(len(ePart)):
            count += int(ePart[j])
            if i != 0:
                Sum -= int(ePart[j])
            else:
                Sum += int(ePart[j])
    print(Sum)

후기
처음에는 복잡해보였고 생각보다 오래걸렸던 문제였지만 문제를 풀어가면서 푸는 법을 알아내고 나서는 쉽게 풀 수 있었습니다.

profile
INTP 개발자 지망생

0개의 댓글