題目鏈結
這個題目和全排列有一些不一樣:該題需要先從1~n中選擇m個數字,然後再對m個數字公升序排列。
前半句,從n個數字選m個,普通的全排列可以做到,對m個數字公升序排列,那麼就在每一次選擇數字的時候從上次最後乙個出發就可以。
主要也是我審題不清晰。
#include #include #include #include #include using namespace std;
const int maxn = 25;
int a[maxn],vis[maxn];
int n,r;
void dfs(int now)
for(int i=a[now-1]+1;i<=n;i++)
vis[i] = 0;}}
}int main()
洛谷P1157 組合的輸出
題目描述 排列與組合是常用的數學方法,其中組合就是從 nn 個元素中抽出 rr 個元素 不分順序且 r le n r n 我們可以簡單地將 nn 個元素理解為自然數 1,2,n1,2,n 從中任取 rr 個數。例如 n 5,r 3n 5,r 3 所有組合為 12 3 1 2 4 1 2 5 1 3 ...
洛谷 P1157 組合的輸出
排列與組合是常用的數學方法,其中組合就是從nn個元素中抽出rr個元素 不分順序且r le n r n 我們可以簡單地將nn個元素理解為自然數1,2,n1,2,n,從中任取rr個數。現要求你輸出所有組合。例如n 5,r 3n 5,r 3,所有組合為 12 3 1 2 4 1 2 5 1 3 4 1 3...
洛谷 P1157 組合的輸出
題目描述 排列與組合是常用的數學方法,其中組合就是從nn個元素中抽出rr個元素 不分順序且r le n r n 我們可以簡單地將nn個元素理解為自然數1,2,n1,2,n,從中任取rr個數。現要求你輸出所有組合。例如n 5,r 3n 5,r 3,所有組合為 12 3 1 2 4 1 2 5 1 3 ...