小明负责公司年会,想出一个趣味游戏:
屏幕给出 1−9 中任意 4 个不重复的数字,大家以最快时间给出这几个数字可拼成的数字从小到大排列位于第 n 位置的数字,其中 n 为给出数字中最大的(如果不到这么多数字则给出最后一个即可).
注意:
题目分析:本题就是在给出的数中任意选出i(1<=i<=4)个数,然后将选出的数全排列,把所有可能的组合的全排列都列举出来排序即可得出第n个数是几。
输入和初始化: 用户输入一串数字,通过逗号分隔,并转换成整数列表 digits。 初始化一个集合 st 来存储不同的数字。 建立一个映射 mp,将数字 2 映射到 5,5 映射到 2,6 映射到 9,9 映射到 6。 res 数组用于存储最终的数字组合。 vis 数组用于标记 digits 中的数字是否已经被用于当前组合。
定义深度优先搜索(DFS)函数 dfs:
本题属于以下题库,请选择所需题库进行购买