问题:
以空格分隔的一组数字S作为输入传递。数字N也作为输入传递。程序必须从S中找到两个数字N1,N2,这样N1*N2=N并打印出来。在
输入格式: S中用空格隔开的一组数字。在
边界条件: S中的位数小于50。在
输出格式: N1后跟N2,用空格隔开(这里N1>;=N2)
示例输入/输出1:
输入:
6 8 5 3 9 4
552337
输出:
^{pr2}$说明:
Using the digits given 859*643 = 552337. As 859 > 643 it is printed first.
示例输入/输出2:
输入:
2 1 2
42
输出:
21 2
任何关于如何进行这项工作的想法都将受到赞赏。在
看看
itertools.permutations
函数。然后简单地将字符串合并,解析为int
,然后将它们相乘,直到找到正确的字符串。在或者,可以对N进行因式分解,然后测试这对因子是否包含S中的所有数字
用法:
^{pr2}$相关问题 更多 >
编程相关推荐