dfs板子

递归实现排列

留着明早省赛之前看

#include<iostream>
using namespace std;
int arr[10010];
int brr[10010];
int n,k;
void dfs(int num){if(num > n){for(int i = 1;i <= n;i++){cout << arr[i] << " ";}cout << endl;return;}for(int i = 1;i <= n;i++){if(brr[i] == 0){brr[i] = 1;arr[num] = i;dfs(num + 1);brr[i] = 0;arr[num]= 0;}}
}
int main()
{cin >> n >> k;dfs(1);return 0;
}

递归实现组合型枚举

#include<iostream>
using namespace std;
int arr[10010];
int brr[10010];
int n, k;
void dfs(int num,int start) {if(num - 1 + n - start + 1 < k){return;}if (num > k) {for (int i = 1; i <= k; i++) {cout << arr[i] << " ";}cout << endl;return;}for (int i = start; i <= n; i++) {arr[num] = i;dfs(num + 1, i + 1);arr[num] = 0;}
}
int main()
{cin >> n >> k;dfs(1,1);return 0;
}

递归实现指数

#include<iostream>
using namespace std;
int n;
int* arr = new int[10000] {0};
int main()
{void dfs(int);cin >> n;dfs(1);
}
void dfs(int x) {if (x > n) {for (int i = 1; i <= n; i++) {if (arr[i] == 1) {cout << i << " ";}}cout << endl;return;}arr[x] = 2;dfs(x + 1);arr[x] = 0;arr[x] = 1;dfs(x + 1);arr[x] = 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/813531.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# winform实现搜索读取已安装的路径

最近在开发winform窗体应用简单的桌面插件,需求是要点击按钮,就可打开相应程序软件但问题在于每个人电脑上的软件安装路径不同所以涉及到读取路径的的问题. 这位兄台写的播客解决了我的问题,甚是不错. ↓↓↓ 解决方案

二、计算机网络物理层基础知识

一、物理层 物理层接口特性&#xff1a;解决如何在连接各种计算机传输媒体上的传输数据比特流&#xff0c;而不是指具体的传输媒体 物理层的主要任务 &#xff1a;确定与传输媒体接口有关的一些特性>定义标准 1、机械特性&#xff1a;定义物理连接的特性&#xff0c;规定物理…

golang kafka sarama源码分析

一些理论 1.topic支持多分区&#xff0c;每个分区只能被组内的一个消费者消费&#xff0c;一个消费者可能消费多个分区的数据&#xff1b; 2.消费者组重平衡的分区策略&#xff0c;是由消费者自己决定的&#xff0c;具体是从消费者组中选一个作为leader进行分区方案分配&#…

人员抽烟AI检测算法原理介绍及实际场景应用

抽烟检测AI算法是一种基于计算机视觉和深度学习技术的先进工具&#xff0c;旨在准确识别并监测个体是否抽烟。该算法通过训练大量图像数据&#xff0c;使模型能够识别出抽烟行为的关键特征&#xff0c;如烟雾、手部动作和口部形态等。 在原理上&#xff0c;抽烟检测AI算法主要…

【Linux系列】Linux判断架构信息

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

K8s: 裸机初始化Kubernetes集群环境

环境准备 这里要先准备 linux 环境&#xff0c;提供一下几种方案1 &#xff09;在云产品上购买一台裸机2 &#xff09;选择一台刚安装好的 linux 服务器3 &#xff09;选择虚拟机安装 linux这里&#xff0c;我选择linux的环境为 centos 在安装了 centos 的裸机上进行搭建 1 &…

【QT入门】 Qt自定义控件与样式设计之QPushButton实现鼠标悬浮按钮弹出对话框

往期回顾&#xff1a; 【QT入门】 Qt自定义控件与样式设计之qss选择器-CSDN博客 【QT入门】 Qt自定义控件与样式设计之QLineEdit的qss使用-CSDN博客 【QT入门】Qt自定义控件与样式设计之QPushButton常用qss-CSDN博客 【QT入门】 Qt自定义控件与样式设计之QPushButton实现鼠标悬…

scipy.signal.cwt 与 pywt.cwt 使用记录

scipy.signal.cwt 该代码中widths以及freq计算公式来源于scipy.signal.morlet2函数官方案例 from scipy.signal import morlet, morlet2 from scipy import signal import matplotlib.pyplot as pltsignal_length 2000 fs 1000# 生成信号数据 time np.arange(0, signal_leng…

黄仁勋揭秘EIOFS(未来成功早期指标)英伟达成为最伟大AI企业的核心奥义

黄仁勋揭秘EIOFS(未来成功早期指标&#xff09;英伟达成为最伟大AI企业的核心奥义 原创 AI 吴厂长 AI 吴厂长 2024-04-02 00:12 上海 黄仁勋&#xff1a;你应该寻找未来成功的早期指标&#xff0c;而且越早越好。 原因是你想尽早看到自己正走在正确的方向上。 有个短语叫EIO…

Go语言中工作负载类型对并发的影响

在实际工作开发中我们需要根据工作负载是CPU密集型还是I/O密集型,使用不同的方式来解决问题。下面我们先来看这些概念,然后再讨论其影响。 在程序执行时,工作负载的执行时间会受以下因素限制: CPU的速度--例如,运行归并排序算法。工作负载被称为CPU密集型。I/O速度--例如…

Ubuntu 点击图标窗口最小化

本文所使用的 Ubuntu 系统版本是 Ubuntu 22.04 ! 用过 Ubuntu 系统的都知道&#xff0c;点击任务栏上的图标&#xff0c;它只能打开应用&#xff0c;而不能最小化应用。我希望点击图标能让窗口最小化这种效果&#xff0c;那该如何做呢&#xff1f; # 打开终端&#xff0c;输入如…

Docker-Compose配置文件docker-compose.yml详解

一份标准的docker-compose.yml文件应该包含version、services、networks三大部分&#xff0c;其中最关键的就是services和networks两个部分。 Compose和Docker兼容性&#xff1a; Compose 文件格式有3个版本,分别为1, 2.x 和 3.x 目前主流的为 3.x 其支持 docker 1.13.0 及其以…

C++---vector容器

是STL容器中的一种常用的容器&#xff0c;由于其大小(size)可变&#xff0c;常用于数组大小不可知的情况下来替代数组。vector容器与数组十分相似&#xff0c;被称为动态数组。时间复杂度为O&#xff08;1&#xff09;。 数组数据通常存储在栈中&#xff0c;vector数据通常存储…

C++ 二重指针

一 指向指针的指针 如果在一个指针变量中存放的是另一个变量的指针的地址&#xff0c;称该指针为指向指针的指针&#xff0c;即二重指针。

无线通信:调制(Modulation)方式

什么是调制方式 调制方式就是将信源信息&#xff08;要传输的信息&#xff09;加载到载波波形上&#xff0c;通过改变载波的某些特性来代表这些信息。通常&#xff0c;传统模拟信号有三种最基本的调制方式&#xff1a;改变幅度的叫调幅&#xff08;AM&#xff09;&#xff0c;…

2.1 LeetCode总结(基本算法)_DFS

1.4 练习 104. 二叉树的最大深度 int maxDepth(struct TreeNode *root, int len) {if (root NULL) {return len;}return fmax(maxDepth(root->left, len1), maxDepth(root->right, len1)); }二叉树最大深度就是基本的递归思路的求解&#xff0c; 手法主要是递归下去之…

C语言基础(三)

C语言基础 三大结构顺序结构选择结构单分支选择结构双分支选择结构多分支选择结构if ...else if....elseswitch语句 循坏结构for循环表达式1可以省略吗&#xff1f;表达式2可以省略吗&#xff1f;表达式3可以省略吗&#xff1f;for循坏的嵌套 while循环do while循坏while与do w…

android支付宝接入流程

接入前准备 接入APP支付能力前&#xff0c;开发者需要完成以下前置步骤。 本文档展示了如何从零开始&#xff0c;使用支付宝开放平台服务端 SDK 快速接入App支付产品&#xff0c;完成与支付宝对接的部分。 第一步&#xff1a;创建应用并获取APPID 要在您的应用中接入支付宝…

【新版】系统架构设计师 - 知识点 - 结构化开发方法

个人总结&#xff0c;仅供参考&#xff0c;欢迎加好友一起讨论 文章目录 架构 - 知识点 - 结构化开发方法结构化开发方法结构化分析结构化设计 数据流图和数据字典模块内聚类型与耦合类型 架构 - 知识点 - 结构化开发方法 结构化开发方法 分析阶段 工具&#xff1a;数据流图、…

前端学习<四>JavaScript基础——20-函数简介

函数的介绍 函数&#xff1a;就是一些功能或语句的封装。在需要的时候&#xff0c;通过调用的形式&#xff0c;执行这些语句。 补充&#xff1a; 函数也是一个对象 使用typeof检查一个函数对象时&#xff0c;会返回 function 函数的作用&#xff1a; 一次定义&#xff0c;…