강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

Subeen Yoo님의 프로필 이미지
Subeen Yoo

작성한 질문수

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

61. 특정 수 만들기 (MS 인터뷰 문제 : DFS 완전탐색)

질문드립니다.

작성

·

153

0

#include<iostream>

#include<algorithm>

#include<cstdio>

#include<vector>

#include<cmath>

#include<stack>

using namespace std;

int n;

vector<int> v(11);

int re,cnt;

void dp(int k,int sum){

if(k==n+1){

if(sum==re) cnt++;

}

else{

dp(k+1,sum+v[k]);

dp(k+1,sum);

dp(k+1,sum-v[k]);

}

}

int main(void){

int n;

cin >> n >> re;

for(int i=1;i<=n;i++){

cin >> v[i];

}

dp(1,0);

if(cnt==0) cout<<"-1";

else cout << cnt;

return 0;

}

제가 짠 코드입니다. 순서도 정답과 같이 햇습니다. 그런데 왜 이건 답이 안나오는지 모르겠습니다.

답변 1

1

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세여^^

n을 전역으로 잡아놓고 또 main함수의 지역으로도 선언해서 그렇습니다. 

Subeen Yoo님의 프로필 이미지
Subeen Yoo

작성한 질문수

질문하기