菜鸟教程例题---第一题:【1,2,3,4】组成无重复的3位数
来源:互联网 发布:网络报警平台网络诈骗 编辑:程序博客网 时间:2024/06/14 12:47
第一题:题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
分析:1.循环:由三位数推出:要做3层循环(定义3个变量,取值范围【1,2,3,4】)
2.判断:由无重复推出:这3个变量要互不相同(i!=j,i!=k,k!=j)
方法一:简单的循环加判断(但是一定要注意格式:for之后的冒号)(因为Python中的冒号来代替大括号,所以错位尤为重要,错一个空格,输出就是有问题的)
for i in [1,2,3,4]:
for j in [1,2,3,4]:
for k in [1,2,3,4]:
if i!=j and i!=k and j!=k:
print i,j,k
n+=1
print "总数为:",n#因为是输出所有符合要求的3位数之后,最后输出总个数,所有这一句在最后,而且是顶头写,不包括在任何语句中
方法二:用append()函数将三位数插入到空列表中
d=[]
for a in range(1,5):
for b in range(1,5):
for c in range(1,5):
if (a!=b) and (a!=c) and (c!=b):
d.append([a,b,c])
print "总数量:", len(d)#列表的长度就是总个数
print d
方法三:从最小值遍历到最大值,从而找出"个十百"位来,把符合“个十百”位各不相同要求的留下
line=[]
for i in range(123,433):#从123开始,到432结束,但是range中要432+1作为临界值
a=i%10 #个位数
b=(i%100)//10 #十位数
c=(i%1000)//100 #百位数
if a!=b and b!=c and a!=c and 0<a<5 and 0<b<5 and 0<c<5:
print(i)
line.append(i)
print("the total is:",len(line))
方法四:用set函数来去除重复的元素,len=3的符合条件
a=0
list_num=['1','2','3','4']#此处把1,2,3,4定义成字符类型,即不能进行数字间的运算
for i in list_num:
for j in list_num:
for k in list_num:
if len(set(i+j+k))==3:#set(i+j+k)就是把(i,j,k)中重复的情况(如:232)去除掉了,所以set()函数就是这个作用,我也还没有深入了解
print(int(i+j+k))#上面定义成了字符型,所以(i+j+k)不会进行加法运算
a+=1
print("total is:% d"%a)#输出时有%d时:后面还要有%d
方法五:把for循环和if语句合成一句,(知道有这种表示形式就可以了,不必记住或者用到自己程序中)
listnum=[1,2,3,4]
list=[i*100+j*10+k for i in listnum for j in listnum for k in listnum if(j!=i and k!=j and k!=i)]
print(list)
- 菜鸟教程例题---第一题:【1,2,3,4】组成无重复的3位数
- 13-1,2,3,4组成无重复的3位数,共有多少种样式
- 基础算法题(1)—— 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的四位数?
- 1,2,3,4组成无重复数组的三位数
- 1,2,3,4能组成多少不重复的3位数,用js实现
- 1、2、3、4四个数字,无重复的3位数
- Java——1、2、3、4能组成多少无重复数字的三位数
- 1,2,3,4四个数字组成三位无重复数字的个数
- 有1、2、3、4四个数字,输出所有能组成的互不相同且无重复的三位数。
- 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数
- 有1,2,3,4个数,能组成多少个不相同无重复的三位数,分别是多少?
- 面试:1,2,3,4四个数能组成多少个无重复数字的三位数?分别是?
- 有1、2、3、4个数字,能组成多少个互不相同且无重复的三位数字
- 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数
- 1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数 都是多少
- 有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数
- 1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
- 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?
- HDU6070Dirt Ratio(二分+线段树)
- 关于springmvc接收前端日期类参数
- 获取IE版本,强于 正则USER_AGENT并向后兼容(自用)
- 欧几里德算法GCD
- jVM加载class文件的原理机制
- 菜鸟教程例题---第一题:【1,2,3,4】组成无重复的3位数
- 结合内核实现源码分析 select poll epoll区别
- Spring Data JPA实现分页Pageable的实例代码
- HDU2222 Keywords Search
- shiro安全框架
- hdu 3944 DP?
- 接口测试方案(Rest类型接口)
- Android中BitmapFactory.Options详解
- 华为OJ——将真分数分解为埃及分数