IGT一道笔试题

1到n连续的n个数 输入m 得出m个有序序列
 比如 输入为n=5 ,m=3 则输出
 543 542 541 532 531 521  432 431 421 321

当前长度为i,每个位上的取之范围为start ~ m - i,可以使用backtracking解决

 void helper(int n, vector<int>&res, int num, int len)
{
if(len == num)
{
for(int i=; i < len; ++i)
{
printf("%d",res[i]);
}
printf("\n");
}
else
{ int end = len - num;
for(int i = n; i >= end; --i)
{
res.push_back(i);
helper(i-, res, num + , len);
res.pop_back();
}
}
}
void fun(int n, int m)
{
vector<int> res;
helper(n, res, , m);
}
上一篇:解决Pyqt打包后运行报错:应用程序无法启动 因为程序的并行配置不正确


下一篇:EXT 数据按F12,F11 显示问题