[프로그래머스 lv 2] 타겟 넘버(깊이/너비 우선 탐색(DFS/BFS))

2025. 2. 26. 23:10·✨ 공부 기록/알고리즘

아이디어 : 경우의 수는 더하거나(+), 빼거나(-) 둘 중 하나. 그러면 트리 형식처럼 만약 2개의 숫자가 있다면 ++, --, -+, +-을 모두 고려하는 그런 방식이 될 수 있을 것 같다. -> 이렇게 하려면 더하는 경우와 빼는 경우를 각각 따로 탐색해야 한다. 즉, 따로 돌아가게 한다는 점에서 재귀함수를 써야 할것 같기도 한데... 즉, DFS 문제인것 같기는 하다.

 

global answer
answer = 0

def calculate(sign, numbers, cal_num, count, target):
    global answer
    if count < 1:
        if cal_num==target:
            answer+=1
        return None
    else:
        count -= 1
        if sign == "+":
            cal_num += numbers[count]
        elif sign == "-":
            cal_num -= numbers[count]

        calculate("+",numbers,cal_num,count,target)
        calculate("-",numbers,cal_num,count,target)

def solution(numbers, target):
    global answer
    cal_num = 0
    count = len(numbers)
    
    calculate("+",numbers,cal_num,count,target)
    calculate("-",numbers,cal_num,count,target)
    answer = answer/2 
    
    return answer

 

저작자표시 비영리 변경금지 (새창열림)

'✨ 공부 기록 > 알고리즘' 카테고리의 다른 글

[프로그래머스 lv 2] 게임 맵 최단거리(깊이/너비 우선 탐색(DFS/BFS))  (0) 2025.02.27
[프로그래머스 lv 3] 네트워크(깊이/너비 우선 탐색(DFS/BFS))  (0) 2025.02.26
[프로그래머스 lv 1] 같은 숫자는 싫어(코딩테스트 고득점 Kit/스택/큐)  (0) 2025.02.25
[프로그래머스 lv 0] 컨트롤 제트  (0) 2025.02.25
[프로그래머스 lv 1] 과일 장수  (0) 2025.02.25
'✨ 공부 기록/알고리즘' 카테고리의 다른 글
  • [프로그래머스 lv 2] 게임 맵 최단거리(깊이/너비 우선 탐색(DFS/BFS))
  • [프로그래머스 lv 3] 네트워크(깊이/너비 우선 탐색(DFS/BFS))
  • [프로그래머스 lv 1] 같은 숫자는 싫어(코딩테스트 고득점 Kit/스택/큐)
  • [프로그래머스 lv 0] 컨트롤 제트
LaonMoon
LaonMoon
  • LaonMoon
    스토리생성연구블로그
    LaonMoon
  • 전체
    오늘
    어제
  • 공지사항

    • About me👋
    • 분류 전체보기
      • ✨ Story Generation
        • 논문 리뷰
        • 연구 관련 생각
      • ✨ 자연어 처리
        • (짧은) 논문 리뷰
        • HuggingFace
        • Transformer 구현
      • ✨ 공부 기록
        • 알고리즘
        • 딥러닝
        • 웹 개발
        • Flutter
        • Flask
        • Android
        • NLP
        • Docker&k8s
        • Database
        • [24-1] 데이터 분석
        • [24-1] RL
      • ✨ 포트폴리오
        • 2020
        • 2021
        • 2022
        • 2023
        • 2024
      • 프로그래밍
        • 오류(Error)정리
        • 시행착오
        • 리눅스 명령어
        • 공부내용 정리
      • AI Playground
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
LaonMoon
[프로그래머스 lv 2] 타겟 넘버(깊이/너비 우선 탐색(DFS/BFS))
상단으로

티스토리툴바