알고리즘
[백준] 1541번: 잃어버린 괄호 - python
육빔
2024. 3. 27. 21:27
728x90
반응형
https://www.acmicpc.net/problem/1541
사실 처음에 이게 어떻게 -35가 되는지 의문이었다.
55-50+40
55-5(0+40) = -145가 아닌가..
라는 식으로 창의력 테스트하다가 단순히 분리하면 된다는 사실을 파악하고 코드를 작성했다.
우선 -를 제일 나중에 하는게 최소값을 찾을 수 있어서
먼저 - 기준으로 분리를 진행하였다. 배열에는 +가 들어가있는 집합으로 나눠지게 되겠고, 이제 각자 집합을 last라는 리스트를 생성해 차곡차곡 전부 더하면서 저장을 해준다.
마지막에는 첫번째꺼에서 나머지 전부를 더한 값을 빼주게 되면 우리가 원하는 값이 나오게 된다.
n = input().split('-')
arr = []
for i in n:
arr.append(i.split("+"))
last = []
for i in arr:
tmp = 0
for j in i:
tmp+= int(j)
last.append(tmp)
print(last[0]-sum(last[1:]))
완성
728x90
반응형