排序组合方法,选出3个数,组成不同的三位数,要求每个三位数不相等
2018-02-25 02:12
435 查看
import random import string #方法1 def strnum(a,k): num1,num2=1,1 b=[] for i in range(1,len(a)+1): num1=num1*i for i in range(1,len(a)-k+1): num2=num2*i #print num1,num2 while True: c=string.join(random.sample(a,k)).replace(" ","") if int(c) not in b: b.append(int(c)) if len(b)>=(num1/num2): break print b print len(b) x=['1','2','3','4'] strnum(x,3) import string import random #方法2 b=[] while True: a=['1','2','3','4'] s=string.join(random.sample(a,3)).replace(" ","") if s not in b: b.append(s) if len(b)>=24: break print b #方法3 c=[] for line0 in x: for line1 in x: for line2 in x: if line2!=line0 and line2!=line1 and line0!=line1: c.append(int(line0+line1+line2)) print c
相关文章推荐
- 用1,2,3,...9组成3个三位数abc,def,ghi,每个数字恰用一次,要求abc:def:ghi=1:2:3
- 1,2,3……,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出所有解。
- 用1,2,3……,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出所有解
- 排列(permutation):用1,2,3,...,9组成3个三位数abc, def和ghi,每个数字恰好使用一次,要求abc:def:ghi = 1:2:3。输出所有解。提示:不必太动脑筋。
- (最简单的)用1,2,3……,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出所有解。
- 1,2,3……,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出所有解的两种解法
- 程序员面试金典——解题总结: 9.18高难度题 18.3编写一个方法,从大小为n的数组中随机选出m个整数。要求每个元素被选中的概率相同。
- 有4个数,组成不同的3位数,每个数各个位数字不同,求这些数的个数
- 神秘的三位数 有这样一个3位数,组成它的3个数字阶乘之和正好等于它本身。即:abc = a! + b! + c!
- 将1到9平均分成3组,每组3个数,要求这三组数组成的三位数都是完全平方数,打印这样的三个数
- swift方法实现查看1234能组成多少不同的三位数
- 由1到9的9个数组成3个3位数,且三个数成1:2:3的比例,试求出所有的组合
- 用123456789这九个数字组成三个三位数,每个数字都不同。使的abc:def:hij = 1:2:3,求这三个数
- swift方法实现查看1234能组成多少不同的三位数
- 随机给定10个小于10的数字(出现的数字可能重复),从其中取出3个各不相同的数字可组合出多个不同的3位数,请输出这些3位数中最大的那个3位数
- 用1,2,3...9组成3个三位数abc, def, ghi, 每个数字恰好使用一次,且abc:def:ghi=1:2:3,输出所有解。
- 要求可以根据每个学生的成绩进行由高到低的排序如果成绩相等则按照年龄由低到高排序数据的样式如下张三:19:90|李四:20:90|王五:20:80|赵六:21:100
- 用1,2,3……,9组成3个三位数,比例为1:2:3,且每个数只能用一次。
- 用1,2....9组成三个三位数abc,def,ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3,输出所有解
- 用1,2,3…9组成3个三位数abc, def, ghi, 每个数字恰好使用一次,且abc:def:ghi=1:2:3,输出所有解。 用1,2,3…9组成3个三位数abc, def, ghi, 每个数