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

题解 - 取数排列

题目描述

取1到N共N个连续的数字(1≤N≤9),组成每位数不重复的所有可能的N位数,按从小到大的顺序进行编号。当输入一个编号M时,就能打印出与该编号对应的那个N位数。例如,当N=3时,可组成的所有三位数为:
在这里插入图片描述
那么,输入编号M=2时,则输出132。

输入
包括两个数,即正整数N(1 <= N <= 9)和正整数M(1 <= M <= 362880)。
输出
只有一行,即与输入的编号M对应的那个N位数。
样例输入
3 2
样例输出 Copy
132

分析

N <= 9,所以可以直接将n全排列,时间复杂度为O(n!),9! = 362880,并且全排列的过程中是从1开始枚举到n,故满足从小到大的关系,即不需要再进行排序,总时间复杂度满足题目要求

全排列

void dfs(int steps){if(steps == n + 1){tmp++; // tmp记录数量for(int i = 1;i <= n;i++) res[tmp][i] = path[i]; // res存储所有满足条件的情况return ;}for(int i = 1;i <= n;i++){if(!st[i]){st[i] = true;path[steps] = i;dfs(steps + 1);st[i] = false;}}
}

代码

#include<bits/stdc++.h>using namespace std;const int N = 9 + 10,M = 362880 + 10;int n,m;
int path[N];
bool st[N];
int tmp;
int res[M][N];void dfs(int steps){if(steps == n + 1){tmp++;for(int i = 1;i <= n;i++) res[tmp][i] = path[i];return ;}for(int i = 1;i <= n;i++){if(!st[i]){st[i] = true;path[steps] = i;dfs(steps + 1);st[i] = false;}}
}int main(){ios::sync_with_stdio;cin.tie(0),cout.tie(0);cin >> n >> m;dfs(1);for(int i = 1;i <= n;i++) cout << res[m][i];return 0;
}

相关文章:

题解 - 取数排列

题目描述 取1到N共N个连续的数字&#xff08;1≤N≤9&#xff09;&#xff0c;组成每位数不重复的所有可能的N位数&#xff0c;按从小到大的顺序进行编号。当输入一个编号M时&#xff0c;就能打印出与该编号对应的那个N位数。例如&#xff0c;当N&#xff1d;3时&#xff0c;可…...

JAVA实战:借助阿里云实现短信发送功能

亲爱的小伙伴们&#x1f618;&#xff0c;在求知的漫漫旅途中&#xff0c;若你对深度学习的奥秘、JAVA 、PYTHON与SAP 的奇妙世界&#xff0c;亦或是读研论文的撰写攻略有所探寻&#x1f9d0;&#xff0c;那不妨给我一个小小的关注吧&#x1f970;。我会精心筹备&#xff0c;在…...

高阶函数:JavaScript 编程中的魔法棒

在JavaScript的世界里&#xff0c;高阶函数是一种强大的工具&#xff0c;它允许我们将函数作为参数传递或将函数作为返回值。这种特性使得JavaScript代码更加灵活和强大。本文将深入探讨高阶函数的定义、用法以及在实际项目中的最佳实践&#xff0c;帮助大家更好地理解和应用这…...

Android 12.0 Launcher3从首页开始安装app功能实现

1.前言 在12.0的系统rom定制化开发中,在进行Launcher3的某些功能开发实现过程中,在某些项目中,安装的app比较多,要求在launcher3的首页开始安装 app应用,接下来就需要分析下app安装图标排序的流程,然后在实现相关的功能 2. Launcher3从首页开始安装app功能实现的核心…...

软考高级架构 - 10.5 软件架构演化评估方法

10.4 软件架构演化原则总结 本节提出了18条架构演化的核心原则&#xff0c;并为每条原则设计了简单而有效的度量方法&#xff0c;用于从系统整体层面提供实用信息&#xff0c;帮助评估和指导架构演化。 演化成本控制&#xff1a;成本小于重新开发成本&#xff0c;经济高效。进…...

半导体制造全流程

半导体制造是一个极其复杂且精密的过程&#xff0c;主要涉及将硅片加工成功能强大的芯片。以下是半导体制造的全流程概述&#xff1a; 1. 硅材料制备 硅提纯&#xff1a; 使用冶金级硅&#xff0c;进一步提纯为高纯度硅&#xff08;电子级硅&#xff09;&#xff0c;纯度可达 …...

国科大网络协议安全期末

完整资料仓库地址&#xff1a;https://gitee.com/etsuyou/UCAS-Network-Protocol-Security 部分题目&#xff1a; 六 论述题10*220 试讨论IPv6解决了IPv4的哪些“痛点”&#xff0c;以及IPv6存在的安全问题试比较IPsec与SSL的安全性 五 简答题5*315 简述MAC欺骗和ARP欺骗的…...

ES动态索引——日志es索引数据按月份存储

一、定义ES索引 NoArgsConstructor AllArgsConstructor Data Accessors(chain true) Document(indexName "charge_pile_log" Constants.ES_TIME_DYNAMIC_INDEX) //(索引名称动态&#xff0c;前面固定&#xff0c;后面月份) public class ChargePileLogESDomain {…...

NLP论文速读(ICML 2024)|面相对齐大语言模型的迁移和合并奖励模型方法

论文速读|Transforming and Combining Rewards for Aligning Large Language Models 论文信息&#xff1a; 简介&#xff1a; 本文探讨了如何使大型语言模型&#xff08;LLMs&#xff09;与人类偏好对齐。传统的对齐方法是先从偏好数据中学习一个奖励模型&#xff0c;然后使用这…...

蓝桥杯我来了

最近蓝桥杯报名快要截止了&#xff0c;我们学校开始收费了&#xff0c;我们学校没有校赛&#xff0c;一旦报名缴费就是省赛&#xff0c;虽然一早就在官网上报名了&#xff0c;但是一直在纠结&#xff0c;和家人沟通&#xff0c;和朋友交流&#xff0c;其实只是想寻求外界的支持…...

Vue3+TypeScript+AntVX6实现Web组态(从技术层面与实现层面进行分析)内含实际案例教学

摘要 用Vue3+TypeScript+AntVX6实现Web组态(从技术层面与实现层面进行分析),包含画布创建、节点设计、拖拽实现(实际案例)、节点连线、交互功能,后续文章持续更新。 注:本文章可以根据目录进行导航 文档支持 AntVX6使用文档 https://x6.antv.antgroup.com/tutorial…...

【LeetCode】每日一题 2024_12_13 K 次乘运算后的最终数组 I(暴力)

前言 每天和你一起刷 LeetCode 每日一题~ 小聊两句 1、今天是 12.13 南京大屠杀国家公祭日。铭记历史&#xff0c;勿忘国耻。 2、今天早上去看了 TGA 年度游戏颁奖&#xff0c;小机器人拿下了年度最佳游戏&#xff0c;所有人都震惊了&#xff0c;大伙纷纷问到&#xff0c;谁…...

Plant simulation、Flexsim、Automod、Emulate3D、VisuaComponent仿真软件对比

软件名称物流系统仿真工业布局仿真动画效果数据分析优化虚拟现实/混合现实二次开发虚拟电控和PLC调试 软件行业内特殊功能Emulate3D1.物流设备模块完备&#xff0c;功能灵活设置&#xff0c;涵盖各种设备形态和运作方式 2.唯一将摩擦力、重力、阻力等物理属性融入到物流运动中&…...

深度学习day4|用pytorch实现猴痘病识别

&#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 &#x1f37a;要求&#xff1a; 训练过程中保存效果最好的模型参数。 加载最佳模型参数识别本地的一张图片。 调整网络结构使测试集accuracy到达88%&#x…...

批量导出工作簿中高清图片-Excel易用宝

我同事在工作簿中做了三个图表&#xff0c;现在需要将工作簿中的图标导出保存为高清图片&#xff0c;通过右键另存为保存的图片并非高清图片&#xff0c;其实要把Excel工作簿中的图表或图片对象导出为高清图片也很简单。 单击Excel易用宝 Plus&#xff0c;导出高清图片。 在导出…...

外观模式的理解和实践

外观模式&#xff08;Facade Pattern&#xff09;是一种常用的软件设计模式&#xff0c;它提供了一个统一的接口&#xff0c;用来访问子系统中的一群接口。该模式定义了一个高层的接口&#xff0c;使得子系统更容易使用。简单来说&#xff0c;外观模式就是通过引入一个外观角色…...

linux离线安装部署redis

版本信息 linux版本&#xff1a;CentOS-7-x86_64 redis版本&#xff1a;redis-6.2.6 VMware&#xff1a;VMware-workstation-full-16.1.1 xshell: Xshell-7.0 安装 1.查看当前虚拟机ip命令&#xff1a;ifconfig -a 2.xhell连接虚拟机 &#xff0c;在xshell页面点击文件-…...

网管平台(基础篇):路由器的介绍与管理

路由器简介 路由器&#xff08;Router&#xff09;是一种计算机网络设备&#xff0c;它的主要作用是将数据通过打包&#xff0c;并按照一定的路径选择算法&#xff0c;将网络传送至目的地。路由器能够连接两个或更多个网络&#xff0c;并根据信道的情况自动选择和设定路由&…...

数据结构——跳表

目录 1.什么是跳表-skiplist 2.skiplist的效率如何保证&#xff1f; 3.skiplist的实现 4.skiplist跟平衡搜索树和哈希表的对比 1.什么是跳表-skiplist skiplist本质上也是一种查找结构&#xff0c;用于解决算法中的查找问题&#xff0c;跟平衡搜索树和哈希表的价值是一样的…...

活动预告 |【Part2】Microsoft Azure 在线技术公开课:基础知识

课程介绍 参加“Azure 在线技术公开课&#xff1a;基础知识”活动&#xff0c;培养有助于创造新的技术可能性的技能并探索基础云概念。参加我们举办的本次免费培训活动&#xff0c;扩充自身的云模型和云服务类型知识。你还可以查看以计算、网络和存储为核心的 Azure 服务。 课…...

GitClaw:基于GitHub Actions的AI智能体框架,实现自动化代码审查与仓库管理

1. 项目概述&#xff1a;当GitHub遇上AI智能体最近在开源社区里&#xff0c;一个名为gitclaw的项目引起了我的注意。它来自open-gitagent组织&#xff0c;名字本身就很有意思——“Git Claw”&#xff0c;直译是“Git爪子”&#xff0c;听起来就像是要给GitHub这个代码仓库平台…...

开源客户端工具设计:从API封装到健壮实现的工程实践

1. 项目概述&#xff1a;一个开源客户端工具的诞生与价值在开源世界里&#xff0c;我们经常会遇到一些功能强大但使用门槛较高的服务端项目。它们往往提供了核心的API或服务&#xff0c;但缺少一个能让普通用户或开发者快速上手、直观操作的“门面”。lotsoftick/openclaw_clie…...

高端酒庄都在偷用的印相秘技:基于真实酒液折射率建模的--iw 2.8微调法(附光学参数对照速查卡)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;高端酒庄印相美学的光学本质解构 高端酒庄的视觉识别系统——尤其是瓶标、酒窖导视与品鉴手册中的“印相美学”&#xff0c;并非仅关乎设计风格&#xff0c;其底层实为光与物质交互的精密光学工程。当光…...

别再手动检查打印机了!用C#写个Windows服务,自动监控HP/Epson等打印机状态并微信通知

打造智能打印机监控系统&#xff1a;基于C#的Windows服务实战指南 打印机故障总是悄无声息地发生——当你急需打印合同时发现缺纸&#xff0c;演示前五分钟发现墨盒耗尽&#xff0c;或是批量打印时某个设备早已脱机。这些场景对IT运维人员来说再熟悉不过&#xff0c;而传统的人…...

系统架构设计师必知:数字签名、加密算法、公钥私钥详解

一、先搞清楚三个基础概念 在进入“数字签名”之前&#xff0c;必须先理解加密和哈希。 1.1 加密&#xff08;Encryption&#xff09; 加密是将明文通过某种算法转换成密文的过程&#xff0c;目的是保密。只有拥有正确密钥的人才能解密还原明文。对称加密&#xff1a;加密和解密…...

计算机毕业设计Hadoop+Spark+AI大模型Steam游戏推荐系统 游戏可视化 机器学习 深度学习 大 数据毕业设计

温馨提示&#xff1a;本人主页置顶文章开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章开头有 CSDN 平台官方提供的学长联系…...

StackEdit v6.0.7发布:懒加载、图片查看等功能升级,优化Markdown编辑体验

StackEdit v6.0.7&#xff1a;多维度功能升级StackEdit v6.0.7正式发布&#xff0c;此次更新涵盖了多个重要功能。在组件加载方面&#xff0c;优化非常用的组件为懒加载方式&#xff0c;这能有效提升编辑器的加载速度和性能。在线离线判断也得到调整&#xff0c;让用户在不同网…...

Cursor-Free-VIP技术实现方案:解决AI编程助手试用限制的完整指南

Cursor-Free-VIP技术实现方案&#xff1a;解决AI编程助手试用限制的完整指南 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reache…...

【LangChain 】大模型调用双雄:流式输出vs 批量调用 —— 一文讲透怎么选

&#x1f680; 大模型调用双雄&#xff1a;流式输出 vs 批量调用 —— 一文讲透怎么选一句话总结&#xff1a;流式输出像"直播打字"&#xff0c;让用户感觉快&#xff1b;批量调用像"快递集运"&#xff0c;让后台效率高。两者不是替代关系&#xff0c;而是…...

本地大语言模型部署指南:从模型选择到性能调优

1. 项目概述&#xff1a;为什么我们需要一个“Awesome”本地大语言模型列表&#xff1f;如果你最近也在折腾本地部署的大语言模型&#xff0c;那你大概率和我一样&#xff0c;经历过一段“信息过载”的迷茫期。GitHub上随便一搜“LLM”、“local”&#xff0c;出来的仓库成百上…...