[프로그래머스] 43165 타겟 넘버 - JAVA - Lv.2

2025. 4. 18. 17:42·알고리즘/문제풀이

[프로그래머스] 43165 타겟 넘버 - JAVA - Lv.2

문제

https://school.programmers.co.kr/learn/courses/30/lessons/43165

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

문제 분석

조건

  • 자연수 배열이 주어지면 배열의 각 수를 더하거나 빼서 타겟 넘버를 맞추는 문제이다.

풀이방법

  • 재귀 함수를 사용하는 DFS를 사용하여 문제를 해결한다.

코드

class Solution {
    public static int TG;
    public static int SIZE;
    public static int answer;
    
    public int solution(int[] numbers, int target) {
        answer = 0;
        TG = target;
        SIZE = numbers.length;
        
        dfs(0,numbers, 0);
        
        return answer;
    }
    
    public void dfs(int depth,int[] numbers,int curr){
        if(depth == SIZE){
            if(curr == TG){
                answer++;
                return ;
            }else{
                return ;
            }
        }
        
        dfs(depth+1, numbers, curr+numbers[depth]);
        dfs(depth+1, numbers, curr-numbers[depth]);
        
    }
}

결과

728x90
저작자표시 비영리 변경금지 (새창열림)
'알고리즘/문제풀이' 카테고리의 다른 글
  • [백준/BOJ] 14889 스타트와 링크 - JAVA - 실버1
  • [프로그래머스] 255900 외톨이 알파벳 - JAVA - PCCP 모의고사
  • [백준/BOJ] 2606 바이러스 - JAVA - 실버3
  • [프로그래머스] 159993 미로 탈출 - JAVA - Lv.2
LIRI
LIRI
  • LIRI
    기록
    LIRI
  • 전체
    오늘
    어제
    • 분류 전체보기 (73)
      • 블로그 꾸미기 (0)
      • Spring (6)
      • React (3)
      • CS (0)
      • 알고리즘 (57)
        • 개념 (2)
        • 문제풀이 (54)
      • Java (1)
      • DB (1)
      • log (4)
        • SSAFY (3)
        • 궁금 (1)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 공지사항

  • 인기 글

  • 태그

    최장증가부분수열
    Springsecurity
    LIS
    Java
    dfs
    리액트
    도대체왜
    백준
    Spring
    불 끄기
    LV2
    ssafy 합격 후기
    그리디
    프로그래머스
    pccp모의고사
    SSAFY 9기
    알고리즘 문제풀이
    BFS
    springboot
    dp
    SSAFY
    비트마스킹
    lv3
    Security
    너비우선탐색
    JWT
    BOJ
    싸피
    알고리즘
    골드1
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
LIRI
[프로그래머스] 43165 타겟 넘버 - JAVA - Lv.2
상단으로

티스토리툴바