반응형
코드
n = int(input())
a_list = list(map(int,input().split()))
add,sub,mul,div = map(int,input().split())
max_n = -int(1e9)
min_n = int(1e9)
def dfs(add,sub,mul,div,cnt,ans):
global max_n
global min_n
if cnt == n:
max_n = max(max_n,ans)
min_n = min(min_n,ans)
if add:
dfs(add-1,sub,mul,div,cnt+1,ans+a_list[cnt])
if sub:
dfs(add,sub-1,mul,div,cnt+1,ans-a_list[cnt])
if mul:
dfs(add,sub,mul-1,div,cnt+1,ans*a_list[cnt])
if div:
dfs(add,sub,mul,div-1,cnt+1,int(ans/a_list[cnt]))
dfs(add,sub,mul,div,1,a_list[0])
print(max_n)
print(min_n)
반응형
'알고리즘 > 완전탐색' 카테고리의 다른 글
[백준][Python] 2961번 도영이가 만든 맛있는 음식 (0) | 2023.03.03 |
---|---|
[프로그래머스][Python] 피로도 (0) | 2023.02.15 |
[백준][Python] 9996번 한국이 그리울 땐 서버에 접속하지 (0) | 2022.07.28 |
[백준][Python] 3085번 사탕 게임 (0) | 2022.07.28 |
[백준][Python] 1487번 물건 팔기 (0) | 2022.07.27 |
댓글