Programmersターゲット番号
4261 ワード
単純な回帰で解けた簡単に考えると簡単に考えるのが難しいと難しい問題のようです
数字は動かず、記号のみを動かす 使用・
재귀
それぞれ2つの再帰路を入れる+
・-
、該当数を入れるとtarget
値に比べて増加answer
💻 完全なコード
#include <string>
#include <vector>
using namespace std;
int answer = 0;
void dfs(vector<int>numbers, int target, int sum, int depth)
{
if(depth==numbers.size())
{
if(sum==target) answer++;
return;
}
dfs(numbers,target, sum+numbers[depth], depth+1);
dfs(numbers,target, sum-numbers[depth], depth+1);
}
int solution(vector<int> numbers, int target) {
dfs(numbers,target, 0,0);
return answer;
}
Reference
この問題について(Programmersターゲット番号), 我々は、より多くの情報をここで見つけました https://velog.io/@luck2901/Programmers타겟-넘버テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol