題解 n選m個的排列

2021-10-12 00:22:11 字數 998 閱讀 7191

題目描述

從n個當中選m個,有多少種排列呢? 請全輸出

輸入格式

輸入n,m(1≤m≤n≤5)

輸出格式

所有可能的排列,字典序

輸入輸出樣例

輸入 #1複製

3

2

輸出 #1複製

12

1321

2331

32

本蒟蒻演算法:遞迴模擬多重迴圈

這是noi/noip選手必備知識點之一

其實遞迴重在函式(特別是檢查函式),所以想學好這個,先得學好自定義函式。

先寫檢查函式:

bool

check()

return

true

;}

在寫遞迴函式:

void

dfs(

int dep)

return;}

for(

int i=

1;i<=n;i++

)}

寥寥幾筆寫完主程式:

cin>>n>>p;

dfs(1)

;

再來乙個超賽亞人合體:

#include

using

namespace std;

long

long n,p,b[6]

;bool

check()

return

true;}

void

dfs(

int dep)

return;}

for(

int i=

1;i<=n;i++)}

intmain()

tip:

**已ac

排列組合 n個球放入m個盒子m 問題 總結

原文 求,盒子都可以分成是否不能區分,和能區分,還能分成是否能有空箱子,所以一共是8種情況,我們現在來一一討論。1.球同,盒不同,無空箱 c n 1,m 1 n m 0,n使用插板法 n個球中間有n 1個間隙,現在要分成m個盒子,而且不能有空箱子,所以只要在n 1個間隙選出m 1個間隙即可 2.球同...

排列組合 n個球放入m個盒子m 問題 總結

求,盒子都可以分成是否不能區分,和能區分,還能分成是否能有空箱子,所以一共是8種情況,我們現在來一一討論。1.球同,盒不同,無空箱 c n 1,m 1 n m 0,n使用插板法 n個球中間有n 1個間隙,現在要分成m個盒子,而且不能有空箱子,所以只要在n 1個間隙選出m 1個間隙即可 2.球同,盒不...

c 生成n選m的組合

題描述 有n個不同的數,現在要從中選取m個,需要按公升序輸出所有排列,比如從0到9中選出2個的所有無重複組合為 0 1 0 20 3 0 40 5 0 60 7 0 80 9 1 21 3 1 41 5 7 8 7 98 9一共45個,c 為 include include include incl...