小慕设置了一个保密柜,但自己不小心忘记了密码。 他只记得密码全部由数字组成,而且所有数字都不重复。 请你根据他记住的数字范围和密码的最少数字个数,帮他找出所有可能的。 规则如下: 输出的组合必须从可选的数字范围中选取,且数字不能重复; 输出的密码数字要按照从小到大的顺序排列,密码组合需要按照字母顺序,从小到大的顺序排序。 输出的每个组合包含的数字数量要大于等于密码的最少数字个数; 如果可能的组合为空,则返回"None"。
提示:带虚线的词点一下有通俗解释。
输入描述
<p> 输入的第一行是可能的密码数字列表,数字间以半角逗号分隔 </p> <p> 输入的第二行是密码最小数字数量 </p>
输出描述
<div data-page-id="NOBYdTomVosS2KxgSRPceIQgnNd" data-docx-has-block-data="false"> <div style="white-space-collapse:preserve;" class="ace-line ace-line old-record-id-PpEpdcOFjogqehxFqY7cFBGHnHg"> 可能的密码组合,每种组合显示成一行,每个组合内部的数字以半角逗号分隔,从小到大的顺序排列。 输出的组合间需要按照字典序排序。比如:<code>2,3,4</code> 放到 <code>2,4</code> 的前面 </div> </div> <span data-lark-record-data="{"rootId":"NOBYdTomVosS2KxgSRPceIQgnNd","text":{"initialAttributedTexts":{"text":{"0":"可能的密码组合,每种组合显示成一行,每个组合内部的数字以半角逗号分隔,从小到大的顺序排列。\n输出的组合间需要按照字典序排序。比如:2,3,4 放到 2,4 的前面"},"attribs":{"0":"*0|1+1a*0+a*0*1+5*0+4*0*2+5*0+4*0*2+3*0+4"}},"apool":{"numToAttrib":{"0":["author","7115054903550050305"],"1":["unli<x>nk","true"],"2":["inlineCode","true"]},"nextNum":3}},"type":"text","referenceRecordMap":{},"extra":{"mention_page_title":{},"external_mention_url":{}},"isKeepQuoteContainer":false,"isFromCode":false,"selection":[{"id":15,"type":"text","selection":{"start":0,"end":81},"recordId":"PpEpdcOFjogqehxFqY7cFBGHnHg"}],"payloadMap":{},"isCut":false}" data-lark-record-format="docx/text" class="lark-record-clipboard"></span>
示例
示例 1
输入
2,3,4 2
输出
2,3 2,3,4 2,4 3,4
说明:最小密码数量是两个,可能有三种组合:2,3、2,4、3,4;三个密码有一种:2,3,4
示例 2
输入
2,0 1
输出
0 0,2 2
说明:可能的密码组合,一个的有两种:0、2;两个的有一种:0,2
时间限制 1000 ms · 内存限制 128 MB