组装新数组
题目描述
给你一个整数M和数组N,N中的元素为连续整数,要求根据N中的元素组装成新的数组R,组装规则:
- R中元素总和加起来等于M
- R中的元素可以从N中重复选取
- R中的元素最多只能有1个不在N中,且比N中的数字都要小(不能为负数)
输入描述
第一行输入是连续数组N,采用空格分隔
第二行输入数字M
输出描述
输出的是组装办法数量,int类型
样例1
input
2
5
output
1
样例2
input
2 3
5
output
2
代码:c++
#include <iostream>
#include <vector>
#include <sstream>
using namespace std;
int dfs(int index, int currentSum, int minValue, int remainingSum, int count, vector<int>& validNumbers) {
if (currentSum > rema