从 ~n 这 n 个整数中随机选取任意多个,输出所有可能的选择方案。

 输入格式
输入一个整数n。 输出格式
每行输出一种方案。 同一行内的数必须升序排列,相邻两个数用恰好1个空格隔开。 对于没有选任何数的方案,输出空行。 本题有自定义校验器(SPJ),各行(不同方案)之间的顺序任意。 数据范围
≤n≤
输入样例: 输出样例:
 #include <iostream>
#include <vector> using namespace std; vector<int> result;
vector<int> v;
int n; void dfs(int i)
{
if(i == n){
for(auto& e:result){
cout << e << ' ';
}
cout <<endl;
return;
} result.push_back(v[i]);
dfs(i+);
result.pop_back(); dfs(i+); } int main()
{ cin >> n;
for(int i= ;i <=n;i++){
v.push_back(i);
} dfs(); return ;
}
从 ~n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案。

输入格式
两个整数 n,m ,在同一行用空格隔开。 输出格式
按照从小到大的顺序输出所有方案,每行1个。 首先,同一行内的数升序排列,相邻两个数用一个空格隔开。 其次,对于两个不同的行,对应下标的数一一比较,字典序较小的排在前面(例如1 7排在1 8前面)。 数据范围
n> ,
≤m≤n ,
n+(n−m)≤
输入样例: 输出样例:
 #include <iostream>
#include <vector> using namespace std; int n ,m;
vector<int> result;
vector<int> v; void dfs(int i){
if(result.size() == m){
for(auto& e:result){
cout << e << ' ';
}
cout <<endl;
return;
}else if(i == n){
return;
} result.push_back(v[i]);
dfs(i+);
result.pop_back(); dfs(i+);
} int main()
{
cin >> n >> m;
for(int i = ;i <= n;i++){
v.push_back(i);
} dfs();
}
把 ~n 这 n 个整数排成一行后随机打乱顺序,输出所有可能的次序。

输入格式
一个整数n。 输出格式
按照从小到大的顺序输出所有方案,每行1个。 首先,同一行相邻两个数用一个空格隔开。 其次,对于两个不同的行,对应下标的数一一比较,字典序较小的排在前面。 数据范围
≤n≤
输入样例: 输出样例:
 #include <iostream>
#include <vector> using namespace std; vector<int> v; int n ; void dfs(int i, vector<int>& result){
if(i== n){
for(auto& e:result){
cout << e << ' ';
}
cout <<endl;
return;
} for(int j = ; j < v.size();j++){
if(v[j] != ){
result[i] = v[j];
v[j] = ;
dfs(i+,result);
v[j] = result[i] ;
}
}
} int main()
{
cin >> n;
for(int i= ; i<=n;i++){
v.push_back(i);
}
vector<int> result(n,); dfs(,result); return ;
}

最新文章

  1. ZooKeeper1 利用虚拟机搭建自己的ZooKeeper集群
  2. toString()方法
  3. 推荐7款新鲜出炉的HTML5/CSS3应用
  4. Android Studio配置Dagger2 以及butterknife
  5. mysql之索引方面的知识点总结
  6. 响应式十日谈第一日:使用 rem 设置文字大小
  7. HDU1176:免费馅饼(DP)
  8. Android proguard (混淆)
  9. (WPS) 网络地理信息处理服务
  10. FtpWebRequest.UsePassive属性:设置FTP工作模式
  11. Socket编程(网络编程)
  12. Kubernetes应用健康检查
  13. python笔记13-文件读写
  14. ScriptOJ-unique#89
  15. MSMQ消息队列总结
  16. mysql8安装成功后忘记密码
  17. word2vec的理解
  18. 基于 Struts2 的文件下载
  19. Effective C++笔记03:资源管理
  20. URAL 1698

热门文章

  1. vue中计算属性的get与set方法
  2. 在Vue中添加css扩展语言sass
  3. Geodesic 什么是“测地线的”?
  4. 【Beta阶段】第十二周Scrum会议
  5. jeecg代码生成器配置及常见问题
  6. 2019 DevOps 技术指南
  7. navicat for mysql 连接 mysql 出现Client does not support authentication protocol requested by server解决方案
  8. Jmeter脚本录制攻略
  9. 《工作笔记:移动web页面前端开发总结》
  10. Python Poetry 学习和使用