当前位置: 首页 > ops >正文

算法题(174):全排列问题

审题:

本题需要我们找出1~n选n个数的全排列情况,并按照五个场宽的要求输出

思路:
方法一:dfs搜索

其实我们本题的思路和上一题的思路是几乎一致的B3623 枚举排列(递归实现排列型枚举) - 洛谷

我们都是依次放入前面没放过的数据,唯一的区别在于最终的输出格式,题目要求场宽为5,所以我们不能再使用cout来输出,而是使用printf结合%5d来完成输出

解题:

#include<iostream>
#include<vector>
using namespace std;
int n;
vector<int> path;
bool f[10];
void dfs()
{if (path.size() == n){for (auto e : path) printf("%5d", e);cout << endl;return;}for (int i = 1; i <= n; i++){if (f[i] == true) continue;path.push_back(i);f[i] = true;dfs();path.pop_back();f[i] = false;}
}
int main()
{cin >> n;dfs();return 0;
}

P1706 全排列问题 - 洛谷

http://www.xdnf.cn/news/15300.html

相关文章:

  • 归并排序递归法和非递归法的简单简单介绍
  • 运放压摆率?正弦波怎么输出了三角波?
  • 数据结构 单链表(2)--单链表的实现
  • 打破并发瓶颈:虚拟线程实现详解与传统线程模型的性能对比
  • 二叉树算法详解和C++代码示例
  • C++封装、多态、继承
  • RFCOMM协议详解:串口仿真与TCP/IP协议栈移植技术——面试高频考点与真题解析
  • 在Intel Mac的PyCharm中设置‘add bin folder to the path‘的解决方案
  • 【Scratch】从入门到放弃(六):指令大全-扩展类
  • iOS高级开发工程师面试——关于优化
  • 在AI应用中Prompt撰写重要却难掌握,‘理解模型与行业知识是关键’:提升迫在眉睫
  • 关于数据库的慢查询
  • C/C++数据结构之多维数组
  • MyBatis04-MyBatis小技巧
  • QT 多线程 管理串口
  • Node.js特训专栏-实战进阶:16. RBAC权限模型设计
  • 沃尔玛 卡号查询 滑块 分析
  • 深度学习图像分类数据集—角膜溃疡识别分类
  • TensorFlow深度学习实战(24)——变分自编码器详解与实现
  • spring-ai-alibaba 1.0.0.2 学习(十六)——多模态
  • IP 地址与网络基础全面解析
  • ARC 02 runner scale set chart:对接集群与 Github Action 服务器
  • 在 OCI 生成式 AI 上搭一个「指定地区拉面店 MCP Server」——从 0 到 1 实战记录
  • 基于SpringBoot3集成Kafka集群
  • CSS个人笔记分享【仅供学习交流】
  • Utils系列之内存池(MultiSizePool)
  • 电商系统未来三年趋势:体验升级、技术赋能与模式重构
  • 关于ISO 26262的Single-Point Fault/Residual Fault/Latent Fault/Dual-Point Fault的整理
  • Android 响应式编程完整指南:StateFlow、SharedFlow、LiveData 详解
  • Docker 基于 Cgroups 实现资源限制详解【实战+源码】