问题标题: 请问酷町堂1012题哪里做错了?

0
1
已解决
葛新
葛新
资深守护
资深守护
#include <iostream>
using namespace std;

int n, r, ans[30];
bool used[30];

void dfs(int t) {
    if(t > r) {
        for(int i=1; i<=r; i++) {
            cout << ans[i] << " ";
        }
        cout << endl;
        return;
    }
    int start = ans[t-1];
    for(int i=start; i<=n; i++) {
        if(!used[i]) {
            ans[t] = i;
            used[i] = true;
            dfs(t+1);
            used[i] = false;
            ans[t] = 0;
        }
    }
}

int main() {
    cin >> n >> r;
    if(r != 0)
        dfs(1);
    return 0;
}

求大神帮忙解决一下,谢谢


4
已采纳
刘斐
刘斐
高级守护
高级守护
int start = ans[t-1];

这里有问题,改一下哦!

2
葛新
葛新
资深守护
资深守护
int start = ans[t-1];

这里有问题

1
吴峻逸
吴峻逸
初级守护
初级守护
int start = ans[t-1];

这里有问题

 

1
李宗霖
李宗霖
中级守护
中级守护

 

 int start = ans[t-1];

这里有问题,改一下哦!

1
刘斐
刘斐
高级守护
高级守护
int start = ans[t-1];

这里错了,改一下,需要+1;

1
鲁天一
鲁天一
初级光能
初级光能

int start = ans[t-1]; 错了

1
0
0
0
0
我要回答