14888 - 연산자 끼워넣기
2022. 5. 3. 13:58ㆍ2022/BaekJoon_삼성 SW 역량 테스트 기출
def dfs(idx, curNum):
global max_value, min_value, N, num, add, sub, mul, div, temp
if idx == N-1:
max_value = max(max_value, curNum)
min_value = min(min_value, curNum)
else:
idx += 1
if add>0:
add -= 1
dfs(idx, curNum+num[idx])
add += 1
if sub>0:
sub -= 1
dfs(idx, curNum-num[idx])
sub += 1
if mul>0:
mul -= 1
dfs(idx, curNum*num[idx])
mul += 1
if div>0:
div -= 1
nxtNum = num[idx]
if curNum < 0:
curNum = -((-curNum)//nxtNum)
else:
curNum = (curNum//nxtNum)
dfs(idx,int(curNum))
div += 1
N = int(input())
num = list(map(int, input().split()))
add, sub, mul, div = map(int, input().split())
max_value = -100000000
min_value = 100000000
temp = []
dfs(0, num[0])
print(max_value)
print(min_value)
'2022 > BaekJoon_삼성 SW 역량 테스트 기출' 카테고리의 다른 글
14890 - 경사로* (0) | 2022.05.03 |
---|---|
14889 - 스타트와 링크* (0) | 2022.05.03 |
14503 - 로봇청소기* (0) | 2022.05.03 |
14502 - 연구소* (0) | 2022.05.03 |
14501 - 퇴사* (0) | 2022.05.03 |