dfs的几个基础示例 acwin 91~94
从 ~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 ;
}
dfs的几个基础示例 acwin 91~94的更多相关文章
- Membership三步曲之入门篇 - Membership基础示例
Membership 三步曲之入门篇 - Membership基础示例 Membership三步曲之入门篇 - Membership基础示例 Membership三步曲之进阶篇 - 深入剖析Pro ...
- [转]Membership三步曲之入门篇 - Membership基础示例
本文转自:http://www.cnblogs.com/jesse2013/p/membership.html Membership三步曲之入门篇 - Membership基础示例 Members ...
- flex基础示例
flex的一些基础用法: <!-- Flex布局已经得到了所有浏览器的支持:chrome21+.Opera12.1+.Firefox22+.safari6.1+.IE10+ Webkit内核浏览 ...
- 一、JDBC基础示例
一.简介 JDBC全称叫做Java database connectivity,直译为Java语言的数据库连接.它主要针对于支持结构化查询语言(SQL)的数据源,与Java程序连接并操作数据. JDB ...
- 一个简单且丑陋的js切换背景图片基础示例
不多说,直接上代码,非常基础的一个原生js切换元素背景图片范例 <html> <head> <meta http-equiv="Content-Type&quo ...
- Vue.js 基础示例
为 Vue.js 初学者写了一些简单的示例,在线示例 示例源码 了解更多请查看 Vue.js 官网文档:http://vuejs.org.cn/guide/
- Java基础知识强化91:DateFormat类之DateFormat实现日期和字符串的相互转换
1. DateFormat类概述: DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间. 是抽象类,所以使用其子类SimpleDateFormat 2. ...
- socket基础示例(一)
//Socket基本编程 //服务端: using System.Net; using System.Net.Sockets; using System.Text; using System.Thre ...
- .NET反编译之Reflector基础示例
这几日由于公司需要, 看了些.NET反编译技巧,特地和大家分享下 .NET反编译工具很多,Reflector是其中一个很优秀的工具,所以就用它来进行反编译工作了.今天我们就用"繁星代码生成器 ...
随机推荐
- Unity容器<1>
参考地址: https://docs.microsoft.com/en-us/previous-versions/msp-n-p/dn170416(v=pandp.10) 总览 Unity是一个轻量级 ...
- ASP.NET MVC快速开发框架FastExecutor开发全过程感受及总结
困境 追溯到2018年5月份,是个炎热的夏天,毕业后1年7个月我提出了离职,原因是受不了原来公司过度的封装框架感觉一年多毫无进步与实施天天轰炸般的电话,偶然间出去面试了一次发现自己知识真的是比较局限, ...
- Computer: Use the mouse to open the analog keyboard
Xx_Introduction Please protection,respect,love,"China's Internet Security Act"! For learni ...
- arcgis api for javascript 学习(七) 调用发布地图信息,并将地图属性信息输出到Excel表格---进阶版
我们在arcgis api for javascript 学习(三)已经学习到了关于调用地图信息进行属性输出的问题,不过通过代码我们实现后会发现还是有一些小瑕疵的,比如我们只能单个数据属性的输出,如果 ...
- Android五大布局详解——FrameLayout(帧布局)
FrameLayout 这个布局相对前面两节介绍的布局就简单了很多,因此它的应用场景也就特别的少.这种布局没有方便的定位方式,所有的控件都会默认摆放在布局的左上角.新建UILayoutTestThre ...
- 通过程序调用微信公众号发消息api返回48001
自己的订阅号,尝试通过写程序来给用户发消息.结果呢,接口返回报错:errcode=48001,errmsg = api unauthorized hint: [ZlPULa02942276!] 去微信 ...
- sqlplus登录时密码有特殊符号解决方法
偶然百度得到解决方法,在查看了公司有的脚本使用了这种解决方式,特记录下来,有需要的可以点击文末的链接查看原文. 本文转载https://www.cnblogs.com/lhrbest/p/656090 ...
- java之对象创建时各成员变量的初始值
除了byte short int long float double char bollean这基础类型外,其余的都是引用类型 成员变量类型 初始值 byte 0 short 0 int 0 long ...
- App 自动化框架设计思路
最近在整理和学习Appium+Java 自动化框架,对APP自动化框架的部分设想参考了一些文章,先进行整理下: 框架的思路一: 思考引入:https://www.cnblogs.com/yunfeio ...
- view WITH CHECK OPTION where-clause violation(查看与检查选项where-子句违反)
创建视图的语句是设置了 WITH CHECK OPTION 这个条件; 创建视图时,sql语句是这样写的: CREATE OR REPLACE VIEW RZ_TST_VIEW AS WHER ...