0是不是正整数 0是有理数还是无理数
本次的题目如下所示(原题出处:蓝桥杯)
【编程实现】
用户输入一个正整数N(3<=N<=9)。从0到N之间的所有正整数(包含0和N)中选择三个,组成一个三位数(0不能作为百位数),且这个三位数为奇数,请计算出共有多少种满足条件的三位数组合。(注意:组成的每个三位数各个位上的数字不能重复)
输入描述:输入一个正整数N(3<=N<=9)
输出描述:输出满足条件的三位数组合的个数
【样例输入】
3
【样例输出】
8
【上述输入输出样例的进一步解释】
用户输入的正整数,即样例输入为3,也就是将0、1、2、3四个数字进行组合。符合要求的三位数为:103、123、203、213、201、231、301、321共8个,所以样例输出为8。
这道题也是一个非常经典的算法问题,解决这道题我们还是要使用枚举的方式。关键问题在于如何枚举。我们需要组成一个三位数,从100到321进行枚举吗?这样明显是不合理的,因为中途有大量的数字与题目要求不相符。那这道题最佳的解法是枚举各个数位上的数字。
题目中提出百位数不能是0,那百位数的范围是1到n;十位数没有任何限制,十位数的范围是0到n;个位数要求是奇数,范围是1到n之间的奇数。我们假设百位、十位、个位变量名为i、j、k,那我们可以得出它们的范围分别为:
i:range(1, n + 1)j:range(0, n + 1)k:range(1, n + 1, 2)题目中提出要求,各个数位上的数字不能重复,那在枚举的范围内判断百位、十位、个位两两不相等,则满足条件,通过这个思路,我们很容易得到程序的代码:
n = int(input())
count = 0
for i in range(1, n + 1):
for j in range(0, n + 1):
for k in range(1, n + 1, 2):
if i != j and i != k and j != k:
count += 1
print(count)本题考查的是枚举算法和循环的嵌套,题目难度★★★
此道题其实改编自一道经典题目,原题如下所示:
有 1 、 2 、 3 、 4 个数字,能组成多少个互不相同且无重复数字的三位数?它们分别是多少?
本道题的难度略小于原题,两道题的思路是如出一辙。我们同样是将百位、十位、个位的变量名定义为i、j、k,可以看出,它们的范围都是range(1, 5)。这道题除了要我们求出个数外,还要将这些数全部输出,满足条件的情况下,我们只要使用100 * i + 10 * j + k即可得到这个三位数。
代码如下:
count = 0
for i in range(1, 5):
for j in range(1, 5):
for k in range(1, 5):
if i != j and i != k and j != k:
print(100 * i + 10 * j + k)
count += 1
print(&39;总数:&39;, count)当然,在三个数位上的数字都相同的情况下,我们可以优化一下代码。毕竟这样循环的话,不同数位上的数字相同也参与了循环,增加了循环次数。如果百位上已经选取的数排除掉,十位上则少循环1个数字,十位上选取的数字再排除掉,各位上则少循环2个数字,我们看看如何在进入循环之前将已选中的数字排除掉。
r = list(range(1, 5))
count = 0
for i in r:
t = r[:] 复制一个列表出来
t.remove(i) 进入下一级循环前删除已选中的百位数
for j in t:
u = t[:]
u.remove(j) 进入下一级循环前删除已选中的十位数
for k in u:
print(100 * i + 10 * j + k)
count += 1
print(&39;总数&39;, count)
从11月份开始,如果你手里有存款,要早做好这三个准备!
社会养老问题是当今全球许多国家都面临的一大挑战。随着人口老龄化的趋势加剧,这一问题的复杂性和紧迫性也日益增强。以下是社会养老问题的一些主要现状:面临着人口老龄化的问题,65岁及以上的老年人口比例在不断增加,而劳动力市场的年轻人口比例在减少。随着老年人口的增加,公共养老金制度面临着巨大的支付压力。在一些国家,养老金的支付已经超过了其收入,导致养老金制度的赤字。大财经2023-11-11 13:30:320000国民党高级将领排名 国民党军长一览表
解放战争期间,不少国军将领审时度势,率部起义,成了人民解放军的一员,为建立新中国做岀了不小的贡献。今天我们就来介绍其中十位最具影响力的起义将领。一、高树勋:河北省盐山县人,师从冯玉祥。1945年10月,国军新八军军长高树勋率万余军民在河北省马头镇起义。建国后,曾任河北省人民政府副主席、副省长等职。图片:大财经2023-03-25 20:11:03000307【每周经济观察】对民间投资回落不可掉以轻心
都说“信心比黄金更重要”,但有一个基本前提不应忽视,即信心源于现实环境的不断优化改善。当下,保持经济复苏的连续性、稳定性,对增强企业家信心、提振民间投资至关重要。大财经2023-07-07 09:32:420001一季度GDP30强城市:苏州失守成都,佛山第17,唐山遗憾无缘
一季度已经过去一个月时间,各地GDP基本官宣,在一季度表现最好的30座城市已经出炉,虽然还有长沙、泉州、福州、还未公布,但并不影响。超过10个城市的GDP总量超过了4000亿元,展现了我国顶尖城市的实力,仅有昆明一市低于2000亿元。从GDP增速来看,经济规模处于全国第3的深圳,以10.02%的名义增速位居第一,重庆、武汉、宁波三城也都在8%以上。具体来看:苏州失守成都大财经2023-05-03 15:52:570002视野股份2022年亏损1257.82万同比亏损减少 销售费用减少
挖贝网5月4日,视野股份(835495)近日发布2022年年度报告,报告期内公司实现营业收入4,151,079.93元,同比下滑79.03%;归属于挂牌公司股东的净利润-12,578,185.13元,较上年同期亏损减少。报告期内经营活动产生的现金流量净额为-2,556,838.59元,归属于挂牌公司股东的净资产6,894,631.24元。0000