公平抽签
题目描述
小A的学校,蓝桥杯的参赛名额非常有限,只有 m 个名额,但是共有 n 个人报名。
作为老师非常苦恼,他不知道该让谁去,他在寻求一个绝对公平的方式。
于是他准备让大家抽签决定,即 m 个签是去,剩下的是不去。
小 A 非常想弄明白最后的抽签结果会有多少种不同到情况,请你设计一个程序帮帮小 A!
输入描述
输入第一行包含两个字符 n,m,其含义如题所述。
接下来第二行到第 n+1 行每行包含一个字符串 S ,表示个人名。
1≤m≤n≤15。
输出描述
输出共若干行,每行包含 m 个字符串,表示该结果被选中到人名(需按字符串的输入顺序大小对结果进行排序)。
输入输出样例
示例
输入
3 2
xiaowang
xiaoA
xiaoli
输出
xiaowang xiaoA
xiaowang xiaoli
xiaoA xiaoli
回溯算法
这段代码实现了一个经典的回溯算法,用来解决组合问题。在这个问题中,我们要从n个人中选出m个人参加比赛。下面是注释过的代码:
#include <iostream>
#include <vector>
using namespace std;
// n 表示总人数,m 表示需要选择的人数
int n, m;
vector<string> path; // 存储当前组合的路径
vector<int> used

最低0.47元/天 解锁文章
1429

被折叠的 条评论
为什么被折叠?



