整数的拆分问题
2015-02-04 22:13
190 查看
void dfs(int sum , vector<int>& vec , int curnum , int id)
{
int i;
if(curnum == sum)
{
static int inum = 1 ;
cout<<"方案 "<<inum++<<": ";
for(i = 0; i < vec.size() ; ++i)
cout<<vec[i]<<" ";
cout<<endl;
return;
}
for(i = id ; i <= sum; ++i)
{
if(curnum + i <= sum)
{
vec.push_back(i);
dfs(sum , vec , curnum + i , i);
vec.pop_back();
}
else
break;
}
}
void main()
{
vector<int> vec;
dfs(10 , vec , 0 , 1);
}
{
int i;
if(curnum == sum)
{
static int inum = 1 ;
cout<<"方案 "<<inum++<<": ";
for(i = 0; i < vec.size() ; ++i)
cout<<vec[i]<<" ";
cout<<endl;
return;
}
for(i = id ; i <= sum; ++i)
{
if(curnum + i <= sum)
{
vec.push_back(i);
dfs(sum , vec , curnum + i , i);
vec.pop_back();
}
else
break;
}
}
void main()
{
vector<int> vec;
dfs(10 , vec , 0 , 1);
}
相关文章推荐
- 整数的拆分问题(不允许重复)
- 将整数拆分为勾股数的问题解决
- 算法基础:整数拆分问题(Golang实现)
- 正整数n的k拆分问题
- Golang算法问题之整数拆分实现方法分析
- Hdu 1028 Ignatius and the Princess III(整数拆分问题,DP)
- 背包问题--整数可否被拆分成子数组的和式
- 整数拆分问题的动态规划解法
- 整数拆分问题详解
- 正整数拆分问题
- 整数拆分并且乘积最大问题
- 整数拆分问题
- 整数拆分问题的分析(dfs)
- HDU 1028 整数拆分问题 Ignatius and the Princess III
- JAVA代码—算法基础:整数拆分求最大乘积问题
- 整数拆分问题_C++
- 整数拆分问题详解
- 整数拆分问题
- 整数拆分问题
- 整数的拆分问题(允许重复)